Advanced set top terminal having a video call feature

ABSTRACT

A set top terminal equipped with a camera and microphone includes the capability to send and receive video calls through a cable television delivery system or other communications networks. In response to detection of the occurrence of a video call event or triggering event, a video program is automatically paused. In response to an incoming video phone call, message, web page, or other video communications information, the system pauses the video program and displays an indication of the occurrence of the communications event. The system also buffers the video program while paused, permitting a user to replay missed portions of it. Alternatively, the system waits for a triggering event, which includes the user&#39;s access to the communications event, in order to pause the video program. The set top terminal also includes features for caller identification of video calls and dual display of video programs and video calls, such as picture in picture. A hardware upgrade for adding video call functionality to a set top terminal is also disclosed.

RELATED APPLICATIONS

The following applications and patents are incorporated herein byreference: U.S. application Ser. No. 09/528,614, filed Mar. 9, 2000,entitled, ADVANCED SET TOP TERMINAL HAVING A PROGRAM PAUSE FEATURE; U.S.application Ser. No. 08/868,967, filed Jun. 5, 1997, entitled CALLERIDENTIFICATION SYSTEM FOR TELEVISION; U.S. Pat. No. 5,990,927, datedNov. 23, 1999, entitled ADVANCED SET TOP FOR CABLE TELEVISION DELIVERYSYSTEM; U.S. application Ser. No. 08/928,630, filed Sep. 12, 1997,entitled SET TOP TERMINAL FOR CABLE TELEVISION DELIVERY SYSTEMS; U.S.application Ser. No. 09/404,707, filed Sep. 15, 1999, entitled PROGRAMDELIVERY SYSTEM FOR NVOD; U.S. Pat. No. 5,798,785, dated Aug. 25, 1998,entitled TERMINAL FOR SUGGESTING PROGRAMS OFFERED ON A TELEVISIONPROGRAM DELIVERY SYSTEM; U.S. Pat. No. 5,600,364, dated Feb. 4, 1997,entitled NETWORK CONTROLLER FOR CABLE TELEVISION DELIVERY SYSTEMS; U.S.Pat. No. 5,659,350, dated Aug. 19, 1997, entitled AN OPERATIONS CENTERFOR A TELEVISION PROGRAM PACKAGING AND DELIVERY SYSTEM; U.S. Pat. No.5,834,853, dated Mar. 31, 1998, entitled SET TOP TERMINAL FOR CABLETELEVISION DELIVERY SYSTEMS; U.S. Pat. No. 5,682,195, dated Oct. 28,1997, entitled DIGITAL CABLE HEADEND FOR CABLE TELEVISION DELIVERYSYSTEM; and U.S. application Ser. No. 09/391,461, filed Sep. 9, 1999,entitled VIDEO CONFERENCING USING AN ELECTRONIC BOOK VIEWER.

TECHNICAL FIELD

The invention relates to television entertainment systems for providingtelevision programming to consumer homes. More particularly, theinvention relates to an apparatus and method for pausing of a videoprogram based upon automatic detection of occurrence of a communicationsevent.

BACKGROUND

Advances in television entertainment have been primarily driven bybreakthroughs in technology. In 1939, advances on Vladmir Zworykin'spicture tube provided the stimulus for NBC to begin its first regularbroadcasts. In 1975, advances in satellite technology provided consumerswith increased programming to homes.

Many of these technology breakthroughs have produced inconvenientsystems for consumers. One example is the ubiquitous three remotecontrol home, having a separate and unique remote control for the TV,cable box and VCR. More recently, technology has provided cable users incertain parts of the country with 100 channels of programming. Thisincreased program capacity is beyond the ability of many consumers touse effectively. No method of managing the program choices has beenprovided to consumers.

Consumers are demanding that future advances in televisionentertainment, particularly programs and program choices, be presentedto the consumer in a user friendly manner. Consumer preferences, insteadof technological breakthroughs, will drive the television entertainmentmarket for at least the next 20 years. As computer vendors haveexperienced a switch from marketing new technology in computer hardwareto marketing better usability, interfaces and service, the televisionentertainment industry will also experience a switch from new technologydriving the market to consumer usability driving the market.

Consumers want products incorporating new technology that are useful,and will no longer purchase new technology for the sake of novelty orstatus. Technological advances in sophisticated hardware are beginningto surpass the capability of the average consumer to use the newtechnology. Careful engineering must be done to make entertainmentproducts incorporating new technology useful and desired by consumers.

In order for new television entertainment products to be successful, theproducts must satisfy consumer demands. TV consumers wish to go fromlimited viewing choices to a variety of choices, from no control ofprogramming to complete control. Consumers wish to advance fromcumbersome and inconvenient television to easy and convenient televisionand keep costs down. Consumers do not wish to pay for one hundredchannels when due to lack of programming information, they seldom, ifever, watch programming on many of these channels.

The concepts of interactive television, high definition television and300 channel cable systems in consumer homes will not sell if they arenot packaged, delivered and presented in a useable fashion to consumers.The problem is that TV programming is not being delivered and presentedto consumers in a user friendly manner.

Consumers are already being bombarded with programming options, numerous“free” cable channels, subscription cable channels and pay-per-viewchoices. Any further increase in TV entertainment choices, without auser friendly presentation and approach, will likely bewilder viewerswith a mind-numbing array of choices.

The TV industry has traditionally marketed and sold its programs toconsumers in bulk, such as continuous feed broadcast and long-termsubscriptions to movie channels. The TV industry is unable to sell itsprogramming in large quantities on a unit per unit basis, such as theordering of one program. Consumers prefer a unit sales approach becauseit keeps costs down and allows the consumer to be more selective intheir viewing.

In addition, viewership fragmentation, which has already begun, willincrease. Programming not presented in a user friendly manner willsuffer with a decrease in viewership and revenue. As programmingpresentation becomes more user friendly, users seek additional featuresand functional capabilities.

What is needed is a system which can deliver and present televisionprogramming through a user friendly interface which allows the consumerto easily select from among the many program choices.

What is needed is a set top converter that provides a user friendlyinterface for subscribers to access television programs.

What is needed is a set top converter with enhanced functionality.

What is needed is a set top converter that provides users with advancedfeatures and capabilities.

What is needed is a method that allows efficient access to hundreds oftelevision programming options.

What is needed is technology that upgrades the functionality of existingset top converters.

What is needed is hardware that provides an upgrade capability allowingthe use of existing set top converter technology in advanced programdelivery systems.

What is needed is a set top converter that provides an upstreamcommunications capability between the set top converter and cableheadend.

What is needed is a set top converter that provides a capability ofgenerating menus for display.

What is needed is a set top converter that provides a simple way toselect a program from a menu.

What is needed is a set top converter that allows users to subscribeon-screen to specialty channels.

What is needed is a set top converter that monitors subscriber viewingchoices for statistical purposes.

What is needed is a set top converter that provides sophisticatedon-screen television menus which can incorporate still video and movingvideo.

What is needed is a set top converter that provides a capability ofscaling and redirecting video for menus.

The present invention is addressed to fulfill these needs.

SUMMARY

The present invention is a set top converter box or terminal for atelevision program delivery system. More specifically, the presentinvention is an advanced set top converter box that acts as a terminalin the viewer's home. The set top terminal is a key component of adigital cable television delivery system. The set top terminal is anupgradeable system that provides for the decompression of digitalprogram signals. The preferred set top terminal provides both a menugeneration capability as well as a number of advanced features andfunctional capabilities.

The set top terminal of the present invention may be achieved through aset of hardware upgrades to any of the following embodiments: (1) anexisting set top converter upgraded with a circuit card (which has amicroprocessor electronically connected to the set top converter); (2)an industry standard decompression converter upgradeable by either anupgrade module or a menu generation card; and (3) a set top converterbox capable of both decompression and menu generation. The hardwareupgrades provide additional advanced features and functionalcapabilities to any of these embodiments.

A number of advanced features and functional capabilities are supportedby the preferred set top terminal. This set top terminal providessubscribers with a picture-on-picture capability without requiring aspecial television to support the capability. The set top terminal alsosupports a TV guide service, which provides subscribers with informationon all programming available at its particular subscriber location. Theset top terminal further includes the capability of querying viewers toestablish, among other things, favorite channel lists, personal profiledata and mood information. The set top terminal allows the subscriber toview promotional menus on future programming events.

The set top terminal supports additional capabilities using its hardwareupgrades that allow subscribers to use other interactive services, forexample, to engage in on-line question and answer sessions, to order andconfirm airline tickets, and to access a variety of other data services.The set top terminal makes use of a digital tuner as a hardware upgradeto provide subscribers with a digital audio capability.

The preferred set top terminal may be used to control video tapemachines, thereby simplifying the recording of programs. The set topterminal can, in conjunction with the program delivery system, easilysupport high definition television (HDTV). For subscribers living inremote locations, the set top terminal accommodates backyard satellitesystems. In addition to all the features that the set top terminalsupports with its current internal programming and upgradeability,additional features may be added or existing features increased throughremote reprogramming of the set top terminal 220 or other programming.

Such features include the capability to send and receive video callsthrough the set top terminal equipped with a camera and microphone. Thevideo call can be communicated through the cable television deliverysystem or other communications networks.

Other such features include a system for automatically pausing a videoprogram in response to detection of the occurrence of a video call eventor triggering event. In response to an incoming video phone call,message, web page, or other video information, the system pauses thevideo program and displays an indication of the occurrence of the videocall event. Alternatively, the system pauses the video program inresponse to a triggering event, which includes a user's access to avideo call event. The system also buffers the video program whilepaused, permitting a user to replay missed portions of it. As usedherein, “video programs” include live or prerecorded programs from anysource such as, for example, a broadcast television signal transmission,a cable television signal transmission, satellite television, videostreaming over the Internet or other network, a VCR, a computer memorysuch as a hard disk, CD-ROM, or digital versatile disk (DVD).

Still other such features include caller identification of video callsand dual display of video programs and video calls, such as picture inpicture. The video call functionality can be built into a set topterminal or provided as a hardware upgrade to a set top terminal.

It is an object of the invention to provide a user friendly interfacefor subscribers to access television programs.

is an object of the invention to allow users to easily navigate throughhundreds of programming choices using on-screen menus.

It is an object of this invention to efficiently access hundreds oftelevision programming options.

is an object of this invention to upgrade the functionality of existingset top converters.

It is an object of this invention to provide an upgrade capabilityallowing the use of existing set top converter technology in an advancedprogram delivery system.

It is an object of this invention to provide an upstream communicationscapability between the set top converter and cable headend.

It is an object of this invention to provide a set top terminal capableof generating menus for display.

It is an object of this invention to allow users to subscribe on-screento specialty channels.

It is an object of this invention to monitor subscriber viewing choicesfor statistical purposes.

It is an object of this invention to provide sophisticated on-screentelevision menus which can incorporate still video and moving video.

These and other objects and advantages of the invention will becomeobvious to those skilled in the art upon review of the followingdescription, the attached drawings and appended claims.

DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram of the primary components of the television deliverysystem.

FIG. 2 is an overview of the television delivery system operations.

FIG. 3 is a schematic of the operation of the primary components of thesystem.

FIG. 4 is a block diagram of the hardware components of the set topterminal.

FIG. 5 a is a perspective front view of a set top terminal.

FIG. 5 b is a perspective rear view of a set top terminal.

FIG. 6 is a schematic of a Turbo card upgrade for a set top terminal.

FIG. 7 a is a drawing of a frame format for program control informationsignal.

FIG. 7 b is a drawing of a frame format for a polling response from theset top terminal.

FIG. 8 is a drawing of the basic menus used in the present invention,including the ten major menus represented by icons.

FIG. 9 a is a schematic of a basic decompression box with upgrade moduleand associated connections.

FIG. 9 b is a schematic of an alternative embodiment of a simpledecompression box with upgrade module and associated connections.

FIG. 10 is a more detailed block diagram of the components of a simpledecompression box with upgrade module.

FIG. 11 is a schematic of the set top terminal's upstream datatransmission hardware.

FIG. 12 a is a schematic showing the components of the Level A, B, and Chardware upgrades.

FIG. 12 b is a schematic showing the components of the Level D hardwareupgrade.

FIG. 13 a is a schematic showing the two parts of a remote control unit.

FIG. 13 b is a drawing of the preferred remote control unit.

FIG. 14 is a diagram of the components of a set top terminal having apicture-on-picture capability.

FIG. 15 is a drawing of a menu related to program catalogue services.

FIGS. 16 a through 16 d are drawings of viewer querying and moodquestion menus.

FIGS. 17 a and 17 b are drawings of the set top terminal hardwarecomponents that accommodate transparent channel switching.

FIG. 18 is a drawing of an interactive television promotional menu for aset top terminal hardware upgrade.

FIGS. 19 a and 19 b are drawings of submenus for interactive televisionservices using hardware upgrade Level A.

FIGS. 20 a through 20 d are drawings of interactive services usinghardware upgrade Level B, which are related to on-screen airlinereservations.

FIG. 21 is a drawing of a menu for digital audio services.

FIG. 22 is a drawing of a menu related to program guide services.

FIG. 23 is a drawing of a menu related to high definition television(HDTV) programming.

FIGS. 24 a-24 d are diagrams of exemplary indications of particularcommunications events for use in pausing a video program.

FIG. 25 is a diagram illustrating use of a buffer to store a videoprogram while it is paused in response to detection of occurrence of acommunications event.

FIG. 26 is a diagram of use of a buffer to permit the user to executevarious video program control functions of a buffered video program.

FIG. 27 is a flow chart of a method for programming a caller IDfunction.

FIG. 28 is a flow chart of a method for event monitoring for use inpausing a video program in response to detection of occurrence of acommunications event.

FIG. 29 is a flow chart of a method for video program control of abuffered video program.

FIG. 30 is a block diagram of a set top terminal with video callingcapabilities.

FIG. 31 is a diagram of various video conferencing network connectionsaccording to a preferred embodiment of the present invention.

FIG. 32 is a diagram of a mini-network without a central node, accordingto a preferred embodiment of the present invention.

FIG. 33 is a diagram of a mini-network having a central node, accordingto a preferred embodiment of the present invention.

FIG. 34 is a connection diagram of a conference call among the three settop terminals.

FIG. 35 is a block diagram of a video conferencing central node.

DETAILED DESCRIPTION A. Television Program Delivery System Description

1. Introduction

FIG. 1 shows the present invention as part of an expanded cabletelevision program delivery system 200 that dramatically increasesprogramming capacity using compressed transmission of television programsignals. Developments in digital bandwidth compression technology nowallow much greater throughput of television program signals overexisting or slightly modified transmission media. The program deliverysystem 200 shown provides subscribers with a user friendly interface tooperate and exploit a six-fold or more increase in current programdelivery capability.

Subscribers are able to access an expanded television program packageand view selected programs through a menu-driven access scheme thatallows each subscriber to select individual programs by sequencing aseries of menus. The menus are sequenced by the subscriber using simplealpha-numeric and iconic character access or moving a cursor orhighlight bar on the TV screen to access desired programs by simplypressing a single button, rather than recalling from memory and pressingthe actual two or more digit numeric number assigned to a selection.Thus, with the press of a single button, the subscriber can advance fromone menu to the next. In this fashion, the subscriber can sequence themenus and select a program from any given menu. The programs are groupedby category so that similar program offerings are found on the samemenu.

2. Major System Components

In its most basic form, the system uses a program delivery system 200 inconjunction with a conventional concatenated cable television system210. The program delivery system 200 generally includes (i) at least oneoperations center 202, where program packaging and control informationare created and then assembled in the form of digital data, (ii) adigital compression system, where the digital data is compressed,combined/multiplexed, encoded, and mapped into digital signals forsatellite transmission to the cable headend 208, and (iii) a set ofin-home decompressors. The program delivery system 200 transports thedigital signals to the cable headend 208 where the signals aretransmitted through a concatenated cable television system 210. Withinthe cable headend 208, the received signals may be decoded,demultiplexed, managed by a local central distribution and switchingmechanism, combined and then transmitted to the set top terminal 220located in each subscriber's home over the cable system 210. Althoughconcatenated cable systems 210 are the most prevalent transmission mediato the home, telephone lines, cellular networks, fiberoptics, PersonalCommunication Networks and similar technology for transmitting to thehome can be used interchangeably with this program delivery system 200.

The delivery system 200 has a reception region 207 with an in-homedecompression capability. This capability is performed by a decompressorhoused within a set top terminal 220 in each subscriber's home. Thedecompressor remains transparent from the subscriber's point of view andallows any of the compressed signals to be demultiplexed andindividually extracted from the composite data stream and thenindividually decompressed upon selection by the subscriber. Thedecompressed video signals are converted into analog signals fortelevision display. Such analog signals include NTSC formatted signalsfor use by a standard television. Control signals are likewise extractedand decompressed and then either executed immediately or placed in localstorage such as a RAM. Multiple sets of decompression hardware may beused to decompress video and control signals. The set top terminal 220may then overlay or combine different signals to form the desireddisplay on the subscriber's television. Graphics on video orpicture-on-picture are examples of such a display.

Although a single digital compression standard (e.g., MPEG) may be usedfor both the program delivery system 200 and the concatenated cablesystem 210, the compression technique used may differ between the twosystems. When the compression standards differ between the two media,the signals received by the cable headend 208 must be decompressedbefore transmission from the headend 208 to the set top terminals 220.Subsequently, the cable headend 208 must recompress and transmit thesignals to the set top terminal 220, which would then decompress thesignals using a specific decompression algorithm.

The video signals and program control signals received by the set topterminal 220 correspond to specific television programs and menuselections that each subscriber may access through a subscriberinterface. The subscriber interface is a device with buttons located onthe set top terminal 220 or on a portable remote control 900. In thepreferred system embodiment, the subscriber interface is a combinedalpha-character, numeric and iconic remote control device 900, whichprovides direct or menu-driven program access. The preferred subscriberinterface also contains cursor movement and go buttons as well as alpha,numeric and iconic buttons. This subscriber interface and menuarrangement enables the subscriber to sequence through menus by choosingfrom among several menu options that are displayed on the televisionscreen. In addition, a user may bypass several menu screens andimmediately choose a program by selecting the appropriatealpha-character, numeric or iconic combinations on the subscriberinterface. In the preferred embodiment, the set top terminal 220generates the menus that are displayed on the television by creatingarrays of particular menu templates, and the set top terminal 220displays a specific menu or submenu option for each available videosignal.

3. Operations Center and Digital Compression System

The operations center 202 performs two primary services, packagingtelevision programs and generating the program control informationsignal. At the operations center 202, television programs are receivedfrom external program sources in both analog and digital form. FIG. 2shows an embodiment of the operations center receiving signals fromvarious external sources 212. Examples of the external program sourcesare sporting events, children's programs, specialty channels, news orany other program source that can provide audio or visual signals. Oncethe programs are received from the external program sources, theoperations center 202 digitizes (and preferably compresses) any programsignals received in analog form. The operations center 202 may alsomaintain an internal storage of programs. The internally stored programsmay be in analog or digital form and stored on permanent or volatilememory sources, including magnetic tape or RAM. Subsequent to receivingprogramming, the operations center 202 packages the programs into thegroups and categories which provide the optimal marketing of theprograms to subscribers. For example, the operations center 202 maypackage the same programs into different categories and menus forweekday, prime-time viewing and Saturday afternoon viewing. Also, theoperations center 202 packages the television programs in a manner thatenables both the various menus to easily represent the programs and thesubscribers to easily access the programs through the menus.

The packaging of the digital signals is typically performed at theoperations center 202 by computer assisted packaging equipment (CAP).The CAP system normally includes at least one computer monitor,keyboard, mouse, and standard video editing equipment. A programmerpackages the signals by entering certain information into the CAP. Thisinformation includes the date, time slot, and program category of thevarious programs. The programmer and the CAP utilize demographic dataand ratings in performing the packaging tasks. After the programmerselects the various programs from a pool of available programs andinputs the requisite information, the programmer, with assistance fromthe CAP, can select the price and allocate transponder space for thevarious programs. After the process is complete, the CAP displays draftmenus or program schedules that correspond to the entries of theprogrammer. The CAP may also graphically display allocation oftransponder space. The programmer may edit the menus and transponderallocation several times until satisfied with the programming schedule.During the editing, the programmer may direct the exact location of anyprogram name on a menu with simple commands to the CAP.

The packaging process also accounts for any groupings by satellitetransponder which are necessary. The operations center 202 may senddifferent groups of programs to different cable headends 208 and/or settop terminals 220. One way the operations center 202 may accomplish thistask is to send different program packages to each transponder. Eachtransponder, or set of transponders, then relays a specific programpackage to specific cable headends 208 and/or set top terminals 220. Theallocation of transponder space is an important task performed by theoperations center 202.

The operations center 202 may also “insert” directions for filling localavailable program time in the packaged signal to enable local cable andtelevision companies to fill the program time with local advertisingand/or local programming. Consequently, the local cable headends 208 arenot constrained to show only programs transmitted from the operationscenter 202. New set top converters will incorporate both digital andanalog channels. Therefore, the cable headend 208 may combine analogsignals with the digital signals prior to transmitting the programsignals to the set top terminals 220.

After the CAP packages the programs, it creates a program controlinformation signal to be delivered with the program package to the cableheadend 208 and/or set top terminal The program control informationsignal contains a description of the contents of the program package,commands to be sent to the cable headend 208 and/or set top terminal220, and other information relevant to the signal transmission.

In addition to packaging the signal, the operations center 202 employsdigital compression techniques to increase existing satellitetransponder capacity by at least a 4:1 ratio, resulting in a four-foldincrease in program delivery capability. A number of digital compressionalgorithms currently exist which can achieve the resultant increase incapacity and improved signal quality desired for the system. Thealgorithms generally use one or more of three basic digital compressiontechniques: (1) within-frame (intraframe) compression, (2)frame-to-frame (interframe) compression, and (3) within carriercompression. Specifically, in the preferred embodiment, the MPEG 2compression method is used. After digital compression, the signals arecombined (multiplexed) and encoded. The combined signal is subsequentlytransmitted to various uplink sites 204.

There may be a single uplink site 204 or multiple uplink sites(represented by 204′, shown in phantom in FIG. 1) for each operationcenter 202. The uplink sites 204 may either be located in the samegeographical place or may be located remotely from the operations center202. Once the composite signal is transmitted to the uplink sites 204,the signal may be multiplexed with other signals, modulated, upconvertedand amplified for transmission over satellite. Multiple cable headends208 may receive such transmissions.

In addition to multiple uplinks, the delivery system 200 may alsocontain multiple operations centers. The preferred method for usingmultiple operations centers is to designate one of the operationscenters as a master operations center and to designate the remainingoperations centers as slave operations centers. In this configuration,the master operations center coordinates various functions among theslave operations centers such as synchronization of simultaneoustransmissions and distributes the operations workload efficiently.

4. Cable Headend

After the operations center 202 has compressed and encoded the programsignals and transmitted the signals to the satellite, the cable headend208 receives and further processes the signals before they are relayedto each set top terminal 220. Each cable headend site is generallyequipped with multiple satellite receiver dishes. Each dish is capableof handling multiple transponder signals from a single satellite andsometimes from multiple satellites.

As an intermediary between the set top terminals 220 and the operationscenter 202 (or other remote site), the cable headend 208 performs twoprimary functions. First, the cable headend 208 acts as a distributioncenter, or signal processor, by relaying the program signal to the settop terminal 220 in each subscriber's home. In addition, the cableheadend 208 acts as a network controller 214 by receiving informationfrom each set top terminal 220 and passing such information on to aninformation gathering site such as the operations center 202.

FIG. 3 shows an embodiment where the cable headend 208 and thesubscriber's home are linked by certain communications media 216. Inthis particular embodiment, analog signals, digitally compressedsignals, other digital signals and up-stream/interactivity signals aresent and received over the media 216. The cable headend 208 providessuch signaling capabilities in its dual roles as a signal processor 209and network controller 214.

As a signal processor 209, the cable headend 208 prepares the programsignals that are received by the cable headend 208 for transmission toeach set top terminal 220. In the preferred system, the signal processor209 re-routes or demultiplexes and recombines the signals and digitalinformation received from the operations center 202 and allocatesdifferent portions of the signal to different frequency ranges. Cableheadends 208 which offer different subscribers different programofferings may allocate the program signals from the operations center202 in various manners to accommodate different viewers. The signalprocessor 209 may also incorporate local programming and/or localadvertisements into the program signal and forward the revised signal tothe set top terminals 220. To accommodate this local programmingavailability, the signal processor 209 must combine the local signal indigital or analog form with the operations center program signals. Ifthe local cable system uses a compression standard that is differentthan the one used by the operations center 202, the signal processor 209must also decompress and recompress incoming signals so they may beproperly formatted for transmission to the set top terminals 220. Thisprocess becomes less important as standards develop (i.e., MPEG 2). Inaddition, the signal processor 209 performs any necessary signaldecryption and/or encryption.

As a network controller 214, the cable headend 208 performs the systemcontrol functions for the system. The primary function of the networkcontroller 214 is to manage the configuration of the set top terminals220 and process signals received from the set top terminals 220. In thepreferred embodiment, the network controller 214 monitors, among otherthings, automatic poll-back responses from the set top terminals 220remotely located at each subscribers' home. The polling and automaticreport-back cycle occurs frequently enough to allow the networkcontroller 214 to maintain accurate account and billing information aswell as monitor authorized channel access. In the simplest embodiment,information to be sent to the network controller 214 will be stored inRAM within each subscriber's set top terminal 220 and will be retrievedonly upon polling by the network controller 214. Retrieval may, forexample, occur on a daily, weekly or monthly basis. The networkcontroller 214 allows the system to maintain complete information on allprograms watched using a particular set top terminal 220.

The network controller 214 is also able to respond to the immediateneeds of a set top terminal 220 by modifying a program controlinformation signal received from the operations center 202. Therefore,the network controller 214 enables the delivery system to adapt to thespecific requirements of individual set top terminals 220 when therequirements cannot be provided to the operations center 202 in advance.In other words, the network controller 214 is able to perform “on thefly programming” changes. With this capability, the network controller214 can handle sophisticated local programming needs such as, forexample, interactive television services, split screen video, andselection of different foreign languages for the same video. Inaddition, the network controller 214 controls and monitors allcompressors and decompressors in the system.

The delivery system 200 and digital compression of the preferredembodiment provides a one-way path from the operations center 202 to thecable headend 208. Status and billing information is sent from the settop terminal 220 to the network controller 214 at the cable headend 208and not directly to the operations center 202. Thus, program monitoringand selection control will take place only at the cable headend 208 bythe local cable company and its decentralized network controllers 214(i.e., decentralized relative to the operations center 202, which iscentral to the program delivery system 200). The local cable companywill in turn be in communication with the operations center 202 or aregional control center (not shown) which accumulates return data fromthe set top terminal 220 for statistical or billing purposes. Inalternative system embodiments, the operations center 202 and thestatistical and billing sites are collocated. Further, telephone lineswith modems are used to transfer information from the set top terminal220 to the statistical and billing sites.

5. Set Top Terminal

The set top terminal 220 is the portion of the delivery system 200 thatresides in the home of a subscriber. The set top terminal 220 is usuallylocated above or below the subscriber's television, but it may be placedanywhere in or near the subscriber's home as long as it is within therange of the subscriber's remote control device 900. In some aspects,the set top terminal 220 may resemble converter boxes already used bymany cable systems. For instance, each set top terminal 220 may includea variety of error detection, decryption, and coding techniques such asanti-taping encoding. However, it will become apparent from thediscussion below that the set top terminal 220 is able to perform manyfunctions that an ordinary converter box cannot perform.

The set top terminal 220 has a plurality of input and output ports toenable it to communicate with other local and remote devices. The settop terminal 220 has an input port that receives information from thecable headend 208. In addition, the unit has at least two output portswhich provide communications from the set top terminal 220 to atelevision and a VCR. Certain menu selections may cause the set topterminal 220 to send control signals directly to the VCR toautomatically program or operate the VCR. Also, the set top terminal 220contains a phone jack which can be used for maintenance, troubleshooting, reprogramming and additional customer features. The set topterminal 220 may also contain stereo/audio output terminals, a satellitedish input port and/or microphone and camera input ports for supportingvideo calls.

Functionally, the set top terminal 220 is the last component in thedelivery system chain. The set top terminal 220 receives compressedprogram and control signals from the cable headend 208 (or, in somecases, directly from the operations center 202). After the set topterminal 220 receives the individually compressed program and controlsignals, the signals are demultiplexed, decompressed, converted toanalog signals (if necessary) and either placed in local storage (fromwhich the menu template may be created), executed immediately, or sentdirectly to the television screen.

After processing certain signals received from the cable headend 208,the set top terminal 220 is able to store menu templates for creatingmenus that are displayed on a subscriber's television by using an arrayof menu templates. Before a menu can be constructed, menu templates mustbe created and sent to the set top terminal 220 for storage. Amicroprocessor uses the control signals received from the operationscenter 202 or cable headend 208 to generate the menu templates forstorage. Each menu template may be stored in volatile memory in the settop terminal 220. When the set top terminal receives templateinformation it demultiplexes the program control signals received fromthe cable headend 208 into four primary parts: video, graphics, programlogic and text. Each menu template represents a different portion of awhole menu, such as a menu background, television logo, cursor highlightoverlay, or other miscellaneous components needed to build a menu. Themenu templates may be deleted or altered using control signals receivedfrom the operations center 202 or cable headend 208.

Once the menu templates have been stored in memory, the set top terminal220 can generate the appropriate menus. In the preferred embodiment, thebasic menu format information is stored in memory located within the settop terminal 220 so that the microprocessor may locally access theinformation from the set top terminal instead of from an incomingsignal. The microprocessor next generates the appropriate menus from themenu templates and the other menu information stored in memory. The settop terminal 220 then displays specific menus on the subscriber'stelevision screen that correspond to the inputs the subscriber selects.

If the subscriber selects a specific program from a menu, the set topterminal 220 determines on which channel the program is being shown,demultiplexes and extracts the single channel transmitted from the cableheadend 208. The set top terminal 220 then decompresses the channel and,if necessary, converts the program signal to an analog NTSC signal toenable the subscriber to view the selected program. The set top terminal220 can be equipped to decompress more than one program signal, but thiswould unnecessarily add to the cost of the unit since a subscriber willgenerally only view one program at a time. However, two or threedecompressors may be desirable to provide picture-on-picture capability,control signal decompression, enhanced channel switching or likefeatures.

In addition to menu information, the set top terminal 220 may also storetext transmitted from the cable headend 208 or the operations center202. The text may inform the subscriber about upcoming events, billingand account status, new subscriptions, or other relevant information.The text will be stored in an appropriate memory location depending onthe frequency and the duration of the use of the textual message.

Also, optional upgrades are available to enhance the performance of asubscriber's set top terminal 220. These upgrades may consist of acartridge or computer card (not shown) that is inserted into anexpansion slot in the set top terminal 220 or may consist of a featureoffered by the cable headend 208 or operations center 202 to which theuser may subscribe. Available upgrades may include on line data baseservices, interactive multi-media services, access to digital radiochannels, and other services.

In the simplest embodiment, available converter boxes such as thosemanufactured by General Instruments or Scientific Atlanta, may bemodified and upgraded to perform the functions of a set top terminal220. The preferred upgrade is a circuit card with a microprocessor whichis electronically connected to or inserted into the converter box.

6. Remote Control Device

The primary conduit for communication between the subscriber and the settop terminal 220 is through the subscriber interface, preferably aremote control device 900. Through this interface, the subscriber mayselect desired programming through the system's menu-driven scheme or bydirectly accessing a specific channel by entering the actual channelnumber. Using the interface, the subscriber can navigate through aseries of informative program selection menus. By using menu-driven,iconic or alpha-character access, the subscriber can access desiredprograms by simply pressing a single button rather than recalling frommemory and pressing the actual channel number to make a selection. Thesubscriber can access regular broadcast and basic cable televisionstations by using either the numeric keys on the remote control 900(pressing the corresponding channel number), or one of the menu iconselection options.

In addition to enabling the subscriber to easily interact with the cablesystem 200, the physical characteristics of the subscriber interface 900should also add to the user friendliness of the system. The remotecontrol 900 should easily fit in the palm of the user's hand. Thebuttons of the preferred remote control 900 contain pictorial symbolsthat are easily identifiable by the subscriber. Also, buttons thatperform similar functions may be color coordinated and consist ofdistinguishing textures to increase the user friendliness of the system.

7. Menu-Driven Program Selection

The menu-driven scheme provides the subscriber with one-step access toall major menus, ranging from hit movies to sport specials to specialtyprograms. From any of the major menus, the subscriber can in turn accesssubmenus and minor menus by cursor or alpha-character access.

There are two different types of menus utilized by the preferredembodiment, the Program Selection menus and the During Program menus.The first series of menus, Program Selection menus, consists of anIntroductory, a Home, Major menus, and Submenus. The second series ofmenus, During Program menus, consists of two primary types, Hidden menusand the Program Overlay menus.

Immediately after the subscriber turns on the set top terminal 220, theIntroductory menu welcomes the subscriber to the system. TheIntroductory menu may display important 6 announcements from the localcable franchise, advertisements from the cable provider, or other typesof messages. In addition, the Introductory menu can inform thesubscriber if the cable headend 208 has sent a personal message to thesubscriber's particular set top terminal 220.

After the Introductory menu has been displayed the subscriber mayadvance to the next level of menus, namely the Home menu. In thepreferred embodiment, after a certain period of time, the cable systemwill advance the subscriber by default to the Home menu. From the Homemenu, the subscriber is able to access all of the programming options.The subscriber may either select a program directly by entering theappropriate channel number from the remote control 900, or thesubscriber may sequence through incremental levels of menu optionsstarting from the Home menu. The Home menu lists categories thatcorrespond to the first level of menus called Major menus.

If the subscriber chooses to sequence through subsequent menus, thesubscriber will be forwarded to the Major menu that corresponds to thechosen category from the Home menu. The Major menus further refine asubscriber's search and help guide the subscriber to the selection ofhis choice.

From the Major menus, the subscriber may access several submenus. Fromeach submenu, the subscriber may access other submenus until thesubscriber finds a desired television program. Similar to the Majormenu, each successive level of Submenus further refines the subscriber'ssearch. The system also enables the subscriber to skip certain menus orsubmenus and directly access a specific menu or television program byentering the appropriate commands on the remote control 900.

The During program menus (including Hidden Menus and Program OverlayMenus) are displayed by the set top terminal 220 only after thesubscriber has selected a television program. In order to avoiddisturbing the subscriber, the set top terminal 220 does not display theHidden Menus until the subscriber selects the appropriate option todisplay a Hidden Menu. The Hidden Menus contain options that arerelevant to the program selected by the viewer. For example, a HiddenMenu may contain options that enable a subscriber to enter aninteractive mode or escape from the selected program.

Program Overlay Menus are similar to Hidden Menus because they occurduring a program and are related to the program being viewed. However,the Program Overlay Menus are displayed concurrently with the programselected by the subscriber. Most Program Overlay Menus are small enoughon the screen to allow the subscriber to continue viewing the selectedprogram comfortably.

B. Detailed Set Top Terminal Description

The set top terminal 220 receives and manipulates signals from the cableheadend 208. The set top terminal 220 is equipped with local computermemory and the capability of interpreting the digitally compressedsignal to produce menus for the subscriber. The remote control 900communicates the subscriber's selections to the set top terminal 220.The subscriber's selections are generally based upon menus or otherprompts displayed on the television screen.

It is preferred that the signal reaches the subscriber's home in acompressed format and is decompressed prior to viewing. Included in thedelivered program signal is information that enables equipment at thesubscriber's home to display menus for choosing particular programs.Depending on the particular embodiment, the television program signalmay arrive at the subscriber's home through one or more connections suchas coaxial cables, fiber cables, twisted pairs, cellular telephoneconnections, or personal communications network (PCN) hookups.

The program control information signal is generated by the operationscenter 202 and provides the network controller 214 with data on thescheduling and description of programs. In an alternate configuration,this data is sent directly to the set top terminal 220 for display tothe subscriber. In the preferred embodiment, the program controlinformation signal is stored and modified by the network controller 214and sent to the set top terminal 220 in the form of a set top terminalcontrol information stream (STTCIS). The set top terminal 220 integrateseither the program control information signal or the STTCIS with datastored in the memory of the set top terminal 220 to generate on-screenmenus that assist the subscriber in choosing programs for display.

The types of information that can be sent using the program controlsignal include: number of program categories, names of programcategories, what channels are assigned to a specific category (such asspecialty channels), names of channels, names of programs on eachchannel, program start times, length of programs, description ofprograms, menu assignment for each program, pricing, whether there is asample video clip for advertisement for the program, and any otherprogram, menu or product information.

With a minimal amount of information being communicated to the set topterminal 220 on a regular basis, the set top terminal 220 is able todetermine the proper menu location for each program and the proper timeand channel to activate for the subscriber after a menu selection. Theprogram control information signal and STTCIS can be formatted in avariety of ways and the on-screen menus can be produced using manydifferent methods. For instance, if the program control informationsignal carries no menu format information, the menu format for creatingthe menus can be fixed in ROM at the set top terminal 220. In thepreferred embodiment, the menu format information is stored at the settop terminal 220 in a temporary memory device such as a RAM or EPROM.New menu format information is sent via the program control informationsignal or the STTCIS to the set top terminals 200 whenever a change to amenu format is desired.

In the simplest embodiment, the menu formats remain fixed and only thetext changes. In this way the program control information signal can belimited to primarily text and a text generator can be employed in theset top terminal 220. Another simple embodiment uses a separate channelfull-time (large bandwidth) just for the menu information.

Live video signals may be used in windows of certain menus. These videosignals can be transmitted using the program control information signalor STTCIS, or can be taken off channels being transmitted simultaneouslywith the menu display. Video for menus, promos or demos may be sent tothe set top terminal 220 in several formats, including (1) on adedicated channel, (2) on a regular program channel and scaled to size,or (3) along with the program control information signal. However, inthe preferred embodiment, a large number of short promos or demo videois sent using a split screen technique on a dedicated channel. Amultiple window technique may be used with the menus to display adescription of a program and one or more video frames that assist thesubscriber in selecting the program.

FIG. 4 shows the basic hardware components of the set top terminal 220.The set top terminal 220 has a tuner 603, digital demodulator 606,decryptor 600, and demultiplexers 609, 616 as well as audio equipment612 and a remote control interface 626 for receiving and processingsignals from the remote control unit 900. An optional modem 627 allowscommunication between a microprocessor 602 and the cable headend 208. AnNTSC encoder 625 provides a standard NTSC video output.

The microprocessor 602 is capable of executing program instructionsstored in memory. These instructions allow a user to access variousmenus by making selections on the remote control 900. To support videocalling, the instructions also enable the microprocessor 602 to processvideo signals from a camera, to process audio signals from a microphoneand to control a camera and microphone. The microprocessor 602 may be asingle microprocessor, as shown, or may be several microprocessors, suchas a general microprocessor, a camera microprocessor and a microphoneprocessor.

The manner in which the video is decompressed and the menus aregenerated from the program control information signal or STTCIS variesdepending on the specific embodiment of the invention. Videodecompressors 618 and 622 may be used if the video is compressed. Theprogram control information signal may be demultiplexed into itscomponent parts, and a video decompressor 618, graphic decompressor,text generator and video combiner 624 may be used to assist in creatingthe menus.

In addition to the menu format information that is stored in graphicsmemory, the set top terminal 220 also stores data, tracking thoseprograms that have been selected for viewing. By gathering this data,the set top terminal 220 can maintain an accurate record of all programsaccessed/watched by storing the data in EEPROM or RAM. Subsequently,this data can be transmitted to the cable headend 208, where it can beused in carrying out network control and monitoring functions. Such datatransmissions between the set top terminal 220 and cable headend 208 canbe accomplished, for example, through upstream transmission over thecable network or over telephone lines through the use of telephonemodems. Where upstream transmission over the cable network is used, theset top terminals 220 can complete data transmissions on a scheduled(e.g., using a polling response or status report to respond to pollingrequests sent from the cable headend 208) or as-needed (e.g., using arandom access technique) basis.

FIG. 5 a shows the front panel of the set top terminal 220, whichincludes an infrared sensor 630 and a series of LED displays 640. TheLED displays 640 may indicate with an icon or a letter (e.g. A-K) themajor menu currently selected by the set top terminal 220 or thechannels selected directly by a user, or menu channel selections (e.g.,from 1 to 50). Further displays may include current channel, time,volume level, sleep time, parental lock (security), account balance, useof a hardware upgrade, second channel being recorded by VCR, use of theLevel D music hardware upgrade in a separate room, and any otherdisplays useful to a subscriber to indicate the current status of theset top terminal 220. The LEDs 640 may also provide an indication of thedigital audio channel currently tuned.

The set top terminal 220 includes a flapped opening 635 on its frontthat allows the insertion of a magnetic cartridge (or similar portablestorage device, including optical disk, ROM, EPROM, etc. not shown).This cartridge opening 635 allows the set top terminal 220 to beupgraded or reprogrammed locally with the use of a magnetic tapecartridge.

On the top or cover of the set top terminal 220 are located pushbuttoncontrols 645. Any function that can be performed on the remote 900 mayalso be performed at the set top terminal 220 using the duplicativepushbutton controls 645.

FIG. 5 b shows the back of the set top terminal 220, which includes apair of output terminals 650, pair of input terminals 652, pair ofstereo/audio output terminals 654, satellite dish input port 656,telephone jack 658 and an RS-232 or RS-422 port 660. In addition, anupgrade port 662 and a cover plate 664 are held in place by a series ofsheet metal screws. One of the output terminals 650 is for a televisionand the other is for a VCR. The set top terminal 220 is equipped tohandle incoming signals on one or two cables using the input terminals652. The phone jack 658 and an RS-232 or RS-422 port 660 are providedfor maintenance, trouble shooting, reprogramming and additional customerfeatures. In alternate embodiments, the telephone jack 658 may be usedas the primary mode of communication between the cable headend 208 andthe set top terminal 220. This connection is possible through the localtelephone, cellular telephone or a personal communications network(PCN).

Additionally, the set top terminal 220 includes a camera input 666 and amicrophone jack 667, by which a camera and microphone, respectively, canbe connected. Alternatively, a camera and microphone can be built intothe set top terminal 220.

The basic programming of each set top terminal 220 is located on ROMwithin the set top terminal 220. Random access memory, the magneticcartridge capability, and the expansion card slot 635 each allowupgrades and changes to be easily made to the set top terminal 220.

In the preferred embodiment, the set top terminal 220 includes ahardware upgrade port 662, in addition to expansion card slots. Thehardware upgrade port 662 accommodates a four-wire (or more) connectionfor: (1) error corrected, decrypted data output of the set top terminal220, (2) a control interface, (3) decompressed video output, and (4) avideo input port. In the preferred embodiment, multiple wires are usedto perform each of the four functions. The four sets of wires arecombined in a single cable with a single multipin connector.

In the preferred embodiment, multipin connections may be used for themultiwire cable. The multipin connection 662 may range from DB9 to DB25.A variety of small computer systems interface (SCSI) ports may also beprovided. Alternatively, four or more ports may be provided instead ofthe single port depicted.

Another port 662 is used to attach the various hardware upgradesdescribed below to a set top terminal 220. The preferred embodiment hasa number of hardware upgrades available for use with a set top terminal220, including: (1) a Level A interactive unit, (2) a Level Binteractive unit, (3) a Level C interactive unit with compact disccapability, (4) a Level D digital radio tuner for separate room use, and(5) a Level E information download unit. Each of these upgrades may beconnected to the set top terminal 220 unit through the upgrade port 662described earlier. The same four wires in a single cable describedearlier may be used.

Existing set top converter boxes such as those made by ScientificAtlanta or General Instruments are presently unequipped to handle themenu selection system of the present invention. Thus, hardwaremodifications are necessary in order to use the menu selection systemwith existing set top converter technology.

A Turbo Card addition to a set top converter is depicted in FIG. 6. TheTurbo Card 700 shown provides the additional functionality needed toutilize the menu system with existing set top converter technology. Theprimary functions the Turbo Card 700 adds to the set top converter arethe interpreting of program control information signals, generating ofmenus, sequencing of menus, and, ultimately, the ability of the viewerto select a channel through the menu system without entering any channelidentifying information. The turbo card also provides a method for aremote location, such as the cable headend 208, to receive informationon programs watched and control the operation of the set top converterand Turbo Card 700. The programs watched information and controlcommands may be passed from the cable headend 208 to the Turbo Card 700using telephone lines.

Optionally, the Turbo Card 700 provides functionality to perform videocalls using the set top terminal 220. In this case, the Turbo Card 700includes a camera interface 718 and a microphone interface 719.

The primary components of the Turbo Card 700 are a PC chip CPU 702, aVGA graphic controller 704, a video combiner 706, logic circuitry 708,NTSC encoder 710, a receiver 712, demodulator 714, and a dialer 716. TheTurbo Card 700 operates by receiving the program control informationsignal from the cable headend 208 through the coaxial cable. The logiccircuitry 708 of the Turbo Card 700 receives data, infrared commands,and synchronization signals from the set top converter. Menu selectionsmade by the viewer on the remote control 900 are received by the set topconverter's IR equipment and passed through to the Turbo Card 700. TheTurbo Card 700 interprets the IR signal and determines the program (ormenu) the viewer has selected. The Turbo Card 700 modifies the IRcommand to send the program selection information to the set topconverter 221. The modified IR command contains the channel informationneeded by the set top converter. Using the phone line and dialer 716,the Turbo Card 700 is able to transmit program access information to thecable headend 208.

In the preferred embodiment, program access information, that is whatprograms the viewer watched, is stored at each set top terminal 220until it is polled by the network controller 214 using a polling requestmessage format as shown in FIG. 7 a. This frame format 920 consists ofsix fields, namely: (1) a leading flag 922 at the beginning of themessage, (2) an address field 924, (3) a subscriber region designation926, (4) a set top terminal identifier 928 that includes a pollingcommand/response (or P/F) bit 930, (5) an information field 932, and (6)a trailing flag 934 at the end of the message. FIG. 7 b shows a responseframe format 920′ (similar to the frame format 920 end, therefore,commonly numbered with the frame depicted in FIG. 7 a, but with theprime indicator added for clarity) for information communicated by theset top terminal 220 to the network controller 214 in response to thepolling request of FIG. 7 a.

The eight-bit flag sequence 922 that appears at the beginning and end ofa frame is used to establish and maintain synchronization. Such asequence typically consists of a “01111110” bit-stream. The addressfield 924 designates a 4-bit address for a given set top terminal 220.The subscriber region designation 926 is a 4-bit field that indicatesthe geographical region in which the subscriber's set top terminal 220is housed. The set top terminal identifier 928 is a 16-bit field thatuniquely identifies each set top terminal 220 with a 15-bit designationfollowed by an appended P/F bit 930. Although field size is provided bythis example, a variety of sizes can be used with the present invention.

The P/F bit 930 is used to command a polling response from the set topterminal 220 addressed, as described below. The response frame format920′ also provides a variable-length information field 932′ for otherdata transmissions, such as information on system updates. The frameformat 920′ ends with an 8-bit flag (or trailing flag) 934′ that isidentical in format to the leading flag 922′, as set forth above. Otherframe formats (e.g., MPEG) will be apparent to one skilled in the artand can be easily adapted for use with the system.

As summarized above, images or programs may be selected for display bysequencing through a series of menus. FIG. 8 is an example of onepossible structure for a series of menus. Generally, the sequence ofmenus is structured with an introductory menu, a home menu, variousmajor menus and a multitude of submenus. The submenus can include promomenus and during program menus. For example, at the home menu portion ofthe sequence of menus and corresponding software routines, a subscribermay select one of the major menus and start a sequence of menu displays.Alternatively, a subscriber may go directly to a major menu bydepressing a menu select button on remote control 900.

At any time during the menu sequence, the subscriber may depress a majormenu button to move into another series of menus. In this way, asubscriber may move from major menu to major menu.

The various software subroutines executed by the microprocessor 602allow a subscriber to sequence the menus, navigating through the variousmenus of the present invention. A subscriber may sequence back throughmenus or return to the home menu with a single touch of the home menubutton on remote 900.

An introductory menu screen 1000 automatically appears upon power-up andinitialization of the set top terminal 220. From this introductory menuscreen 1000, the set top terminal software will normally advance thesubscriber to the home menu screen 1010. The home menu 1010 is the basicmenu that the subscriber will return to in order to make the first levelof viewing decisions. When the set top terminal software is displayingthe home menu 1010, the subscriber is able to access any televisionprogramming option. The software allows programming options to beentered through cursor movement on the screen and directly by buttonselection on the remote control 900.

In the normal progression through the menu screens, the software willforward the subscriber to a major menu screen 1020 in response to thesubscriber's remote control 900 selection or highlighted cursorselection from the home menu screen 1010. The selections displayed onthe home menu 1010 are for large categories of programming options.

Following the major menu 1020, the subscriber may navigate through oneor more submenu screens 1050 from which the subscriber may choose oneparticular program for viewing. For most programming selections, theuser will proceed from the home menu 1010 to a major menu 1020 and thento one or more submenus 1050. However, for certain programming optionsor functions of the set top terminal 220, the user may skip one or moremenus in the sequence.

The During Program Menus 1200 are submenus enabled by the set topterminal software only after the subscriber has selected a televisionprogram. These menus provide the subscriber with additionalfunctionality and/or additional information while viewing a selectedprogram. The During Program Menus 1200 sequence can be furthersubdivided into at least two types of menus, Hidden Menus 1380 andProgram Overlay Menus 1390.

To avoid disturbing a subscriber during viewing of a program, the HiddenMenus 1380 are not shown to the subscriber but instead “reside” at theset top terminal 220 microprocessor The microprocessor 602 awaits abutton entry either from the remote control 900 or set top terminal 220buttons before executing or displaying any Hidden Menu 1380 options. Theset top terminal software provides the subscriber with additionalfunctions such as entering an interactive mode or escaping from aselected program through use of Hidden Menus 1380.

Program Overlay Menus 1390 are similar to Hidden Menus 1380. However,the Program Overlay Menus 1390 are overlayed onto portions of thedisplayed video and not hidden. The software for the Program OverlayMenus 1390 allows the subscriber to continue to watch the selectedtelevision program with audio but places graphical information on aportion of the television screen. Most Program Overlay Menus 1390 aregraphically generated to cover small portions of video. Some Overlays1390 which are by their nature more important than the program beingviewed will overlay onto greater portions of the video. Examples oftypes of overlay menus 1390 include Notification Menus 1392 andConfirmation Menus 1394. In the preferred embodiment, the software forthe Program Overlay Menus 1390 controls the reduction or scales down the(entire) programs video and redirects the video to a portion of thescreen.

Submenus provide the cost of viewing the program and the program'slength in hours and minutes. From the submenus, the subscriber is givenat least three options: (1) to purchase a program, (2) to return to theprevious menu, and (3) to press “go” and return to regular TV. Thesubscriber may also be given other options such as previewing theprogram.

Using an on-screen menu approach to program selection, there is nearlyan unlimited number of menus that can be shown to the subscriber. Thememory capability of the set top terminal 220 and the quantity ofinformation that is sent using the program control information signalare the only limits on the number of menus and amount of informationthat can be displayed to the subscriber. The approach of using a seriesof menus in a simple tree sequence is both easy for the subscriber touse and simply implemented by the set top terminal 220 and remotecontrol device 900 with cursor movement. A user interface softwareprogrammer will find many obvious variations from the preferredembodiment described.

The set top terminal 220 generates and creates menus using, in part,information stored in its graphics memory. A background graphics file800 will store menu backgrounds and a logo graphics file will store anynecessary logos. A menu display and cursor graphics file will store menudisplay blocks and cursor highlight overlays as well as any othermiscellaneous files needed to build the menus. Using this method ofstoring menus, the menus can be changed by reprogramming the graphicsmemory of the set top terminal 220 through instructions from either thenetwork controller 214 or operations center 202.

The microprocessor 602 performs the steps required to create a menuusing stored information. The microprocessor 602 fetches a backgroundfile, logo file, menu display and cursor file in most instances. Themicroprocessor 602 fetches text from long-term, intermediate-term, orshort-term storage depending on where the text is stored. Using a videocombiner (or like device), the stored information is combined with videoand the entire image is sent to the television screen for display.

In the preferred embodiment, a graphics controller is used to assist theset top terminal 220 in generating menus. Menu generation by the set topterminal 220 begins with the building 1 of a major menu screen, whichincludes background graphics for that major menu. The backgroundgraphics may include an upper sash across the top of the screen and alower sash across the bottom of the screen. The background graphics maybe generated from the background graphics file 800 in the memory filesof the graphics memory (preferably EEPROM). In addition, logo graphicsmay be generated. Such graphics typically include an icon window, acable company logo, a channel company logo, and two “go” buttons.

Preferably, the text for each major menu is generated separately by atext generator in the set top terminal 220. Those portions of the textthat generally remain the same for a period of weeks or months may bestored in EEPROM or other local storage. Text which changes on a regularbasis, such as the movie titles (or other program selections), istransmitted to the set top terminal 220 by either the operations center202 or the network controller 214 of the cable headend 208. In thismanner, the cable headend 208 may change the program selectionsavailable on any major menu 1020 by modifying the program controlinformation signal sent by the operations center 202 and transmittingany changes using the STTCIS.

Day, date and time information are added to each major menu. Thisinformation is sent from the operations center 202, the cable headend208 (signal processor 209 or network controller 214), the uplink site,or generated by the set top terminal 220 internally.

The creation and display of program description submenus is performed bythe set top terminal 220 in a manner similar to that described above.Each submenu may be created in parts and combined before being sent tothe television screen. Preferably, background graphics and upper andlower sashes are used. Likewise, a video window and half-strip windowcan be generated from information in storage on the EEPROM.

In addition to graphics and text, some submenus include windows thatshow video. Such video may be still or moving pictures. Still picturesmay be stored in a compressed format (such as JPEG) at the set topterminal 220. Video stills may be transmitted by the operations center202 through the program control information signal from time to time.

Moving video picture is obtained directly from a current video feed asdescribed above. Depending on video window size, this may requiremanipulation of the video signal, including scaling down the size of thevideo and redirecting the video to the portion of the menu screen whichis within the video window of the menu. Alternatively, the video may beobtained from a split screen channel. Such a method involves the use ofsplit screen video techniques to send multiple video clips on a singlechannel at a given time. The set top terminal 220 would scale thepicture, if necessary, and redirect it to the correct position on thescreen using known scaling and positioning techniques. Additionalcircuitry may be required in the set top terminal 220 to performadequate scaling and repositioning.

To avoid the need for redirecting video into the portion of the screenwhich houses the video window, masking and menu graphics may be used tocover the portions of the channel video that are not needed. Thismasking technique allows the split screen video to remain in the sameportion of the screen that it is transmitted by the operations center202. The masking is then adjusted to cover the undesired portions of thescreen. These masks are stored in the background graphics file similarlyto other background files for menus.

The split screen video technique may also be used for promotingtelevision programming. Since a great number of short video clips may besent continuously, full or partial screen promotionals (orinformationals) may be provided to the subscriber. With this largequantity of promotional video, the subscriber is given the opportunityto “graze” through new movie or television programming selections. Thesubscriber simply grazes from promotional video to promotional videountil the desired television program is discovered.

To support video calling, a video call options menu 1022 is preferablyprovided. In the video call options menu 1022, the user can set up suchthings as turning caller ID on/off, turning automatic program pausingon/off, the default state of the video camera 2000 (on or off), timeperiods when calls shall not interrupt programming and shall beautomatically messaged instead (e.g., during favorite programs), howvideo call images are displayed (e.g., picture-in-picture, on a bluescreen or on a paused image of the current program).

C. Detailed Description of Advanced Set Top Terminal

1. Overview

The present invention relates to advances in the set top terminal 220described above. In particular, the present invention may be achievedthrough a set of hardware upgrades or additions to the followingembodiments: (1) an existing set top converter (not shown) upgraded witha Turbo Card 700 or the like; (2) an industry standard digitaldecompression converter box (as shown in FIGS. 9 a and 9 b below)upgradeable by either an upgrade module or a menu generation card; or(3) a set top terminal 200 capable of both decompression and menugeneration. The set of hardware upgrades described below can be used toprovide additional advanced features and functional capabilities to anyof these embodiments.

Table A shows several exemplary hardware configurations that may be usedto achieve the goals of the present invention. In particular, Table Ashows four columns of set top converter technology, which may bemodified to produce the various set top capabilities shown in the threerows of the table.

The table shows the various inherent functional capabilities of each settop converter, and how each may be modified or upgraded, if necessary,to achieve the objectives of the present invention. From left to right,the columns of the table span the various alternatives for balancingthose capabilities that may be built into set top converters orterminals, on the one hand, and those capabilities that can be providedthrough, for example, an upgrade module, expansion card or hardwareupgrade of the present invention, on the other. This balance allows adesigner or manufacturer of set top converters to choose between addingadvanced functionality to an existing converter box or, instead,producing a converter with additional built-in features that increasecost and complexity of the converter or terminal.

TABLE A Set Top Converter Set Top Converter With Digital De- ExistingAnalog With Digital compression And Advanced Set Top Decompression MenuGeneration Set Top Converter Capability Capability TerminalDecompression N/A Built-In Built-In Built-In Capability Menu Turbo CardUpgrade Module Built-In Built-In Generation or Menu CapabilityGeneration Card Advanced Level A-C Level A-E Level A-E Built-In FeaturesHardware Hardware Hardware Upgrades Upgrades or Upgrades or or ExpansionCard Expansion Card Expansion Card

The first column of Table A shows how an existing analog set topconverter can be modified to provide menu generation capability throughthe use of the Turbo Card. In addition to the Turbo Card, such anexisting analog set top converter may be further modified to provide anyof the advanced features described below through the use of the Level A,Level B and Level C hardware upgrades or an expansion card. Suchexisting set top converter boxes are currently manufactured byScientific Atlanta and General Instruments, among others. Theseconverter boxes have been designed for use with analog waveforms and, asa result, digital decompression capabilities are not applicable.

The second column of Table A shows a set top converter with digitaldecompression capability. This converter is a simple decompression boxwhich may eventually become the industry standard. The simpledecompression boxes may be modified to provide the enhancedfunctionality of the present invention. For example, a simpledecompression box may be modified to produce menu generation capabilitythrough the use of an upgrade module or menu generation card. Inaddition, other advanced features may be added to a simple decompressionbox through modifications that include any of the Level A through Ehardware upgrades or an expansion card. Each of these modifications aredescribed below.

The third column of Table A shows a set top converter that has built-indigital decompression and menu generation capabilities. Thus, in orderto achieve the enhanced functionality of the present invention, otheradvanced features may be provided through hardware modification. Suchmodification may be accomplished through the use of any of the Level Athrough E hardware upgrades or the expansion card, as explained below.

The fourth column of Table A shows an advanced set top terminal havingdecompression, menu generation, and advanced functional capabilities.Each of these capabilities are built in to the terminal itself In thisway, achieving the enhanced performance of the set top terminal inaccordance with the present invention would require no hardwaremodification.

In the preferred embodiment, the advanced set top terminal 220 of thepresent invention has the capability, among other things, of receivingtiered programming from the network controller. Tiered programmingallows different users to view different video even though thesubscribers are “tuned” to the same channel. For example, the networkcontroller 214 may know the demographics of its subscribers through adatabase, by “learning” from prior subscriber choices, from aninteractive selection, or from other means. Using the demographicsinformation, the network controller 214 may target commercials to thecorrect audience by showing different commercials to subscribers withdifferent demographics. Even though subscribers will believe they are“tuned” to one channel, each subscriber will be switched to a differentchannel for the tiered video. Alternatively, subscribers may be offeredan option of several commercials from which to choose.

To accommodate foreign speaking subscribers, multiple audio channels fortelevision programming may be provided. In this way, the subscriber maybe shown menus of programs available in the subscriber's nativelanguage. The function of choosing the correct audio to correspond tothe selected language may be handled by either the set top terminal 220or the network controller 214 depending upon the configuration. Localprogramming in several languages or additional audio channels for aforeign language translation of a popular television program may beprovided by the network controller 214. Using a picture-on-picturefeature, sign language may be similarly made available to certain settop terminals 220 for the deaf. Also, a text overlay may easily beproduced on the lower part of the screen for the deaf.

Typically, each video signal is received at the set top terminal 220along with four audio channels. Two of these audio channels willpreferably be used for left and right stereo audio reception of thevideo signal being displayed. The remaining two audio signals may beused for alternative languages. For example, where a video signal isreceived by the set top terminal 220, two of the audio channels willprovide the stereo audio signals for that video in English, with theother two audio channels providing mono audio signals in French andSpanish. In this way, each video signal received at the set top terminal220 can accommodate at least two foreign languages. Where stereo audiochannels are not desired, the audio channels in English can be set to asingle signal, providing mono audio reception, and increasing themultiple language audio channel capability to three foreign languages.

In other embodiments, the network controller 214 can act as a centralcomputer and provide intra-set top terminal interactive games, inter-settop terminal interactive games, computer bulletin board type services,message services (Electronic mail) etc. For example, a subscriber mayplay war games with five (anonymous) fellow subscribers each in theirown home each operating a separate tank. The network controller 214gathers the players via set top terminal 220 communications and acts asthe referee. A bulletin board or message system can be set up to discussa particular program such as “Twin Peaks Whodunit” for enthusiasts.These interactive features are further described below with theinteractive services level B menu and the set top terminal hardwareupgrade level B interactive unit.

In order to achieve the required throughput of video and audioinformation for the system, digital compression techniques for video areemployed. As a result, the set top temiinal 220 typically mustdecompress any digitally compressed program signals that it receives.Methods of decompression are a function of the compression techniqueused in the program delivery system.

There are three basic digital compression techniques: within-frame(intraframe), frame-to-frame (interframe), and within-carriercompression. Various compression methods may be used with thesetechniques. Such methods of compression, which include vectorquantization and discrete cosine transform methodologies, are known tothose skilled in the art.

Several standard digital formats representing both digitizing standardsand compression standards have also been developed. For example, JPEG(joint photographic experts group) is a standard for single picturedigitization. Motion picture digitization may be represented bystandards such as MPEG or MPEG 2 (motion picture engineering groupspecification). In addition to these standards, other proprietarystandards have been developed. Although MPEG and MPEG 2 for motionpictures are preferred in the present invention, any reliable digitalformat with compression may be used.

Various hybrids of the above compression techniques and methods havebeen developed by several companies including AT&T, Compression Labs,Inc., General Instruments, Scientific-Atlanta, Philips, and Zenith. Anyof the compression techniques developed by these companies, as well asother techniques known to those skilled in the art, may be used with thepresent invention.

2. Advanced Set Top Terminal Major Components and Upgrades

a. Decompression Box with Upgrade Module

The preferred program delivery system uses digitally compressed signalsand, as a result, the preferred subscriber equipment configuration mustbe capable of decompressing and processing such digitally compressedsignals. FIG. 9 a diagrams the basic interplay between an upgrade module700 and a simple decompression box 302. The upgrade module 300 can beconnected to the decompression box 302 through a port similar to theupgrade port 662 described above (FIG. 5 b). The simple decompressionbox 302 shown is preferably a future industry standard decompression boxcapable of communicating with an upgrade module 300 to enhancefunctionality.

The upgrade module 300 provides menu generation capability to the simpledecompression box 302. The microprocessor of the simple decompressionbox 302 communicates with the microprocessor in the upgrade module 300to provide the full functionality of a set top terminal 220.

In the preferred embodiment, multipin connections may be used for amultiwire cable connecting the simple decompression box 302 with theupgrade module 300. The multipin connection may range from DB9 to DB25.A SCSI, or small computer systems interface, port (not shown) may alsobe provided. Alternatively, four or more ports may be provided insteadof the single port depicted. If a port is not provided, the upgrademodule may, alternatively, be hard-wired to the simple decompression box302.

As represented generally at 304, the digital data set of output wires ofthe simple decompression box 302 will preferably output error correctedand decrypted data to the upgrade module 300. The second set of wires,providing the interface connection, allows the microprocessor in theupgrade module 300 to communicate with the microprocessor of the simpledecompression box 302. In this manner, the video circuitry of theupgrade module 300 and the simple decompression box 302 may maintainsynchronization. The third set of wires, providing the decompressedvideo output, provide the upgrade module 300 with a decompressed videosignal to manipulate. The fourth set of wires, comprising the videoinput set, allows the simple decompression box 302 to accept a videosignal that is a combined text, graphics, and video signal.

FIG. 9 a further shows the CATV input 306, video input 308, and videoand audio outputs 310, 312, as part of the simple decompression box 302.This embodiment reduces the component cost of upgrade module 300, andthus, is preferred. The upgrade module 300 may simply be a cartridge(not shown) insertable into the simple decompression box 302.Alternatively, as shown in commonly numbered FIG. 9 b, the CATV input306, video input 308 and video and audio outputs 310, 312 may beincluded as part of the upgrade module In this embodiment, the simpledecompression box 302 is primarily used for decompressing the video.

Referring to FIG. 10, the upgrade module 300 preferably includes thefollowing circuitry: a video graphics and text demultiplexer 314; a textand graphics video plane combiner 316; a run length graphicsdecompressor 318; and, a run length compressed graphics memory 320(nonvolatile RAM, ROM, EPROM, or EEPROM). By means of communicationsthrough the multiwire connection between the upgrade module 300 and thesimple decompression box 302, compressed video and control signals maybe demultiplexed by the demultiplexer 314 within the upgrade module 300.The run length graphics decompressor 318, through communications withthe run length compressed graphics RAM 320, permits decompression of theinput compressed video signal. The text and graphics video planecombiner 316 allows demultiplexed and decompressed signals to be output,through the simple decompression box 302, to a subscriber's television222 showing both video and overlay menus with text. FIG. 10 shows theelements of a simple decompression box 302 (numbered commonly with theelements of the set top terminal 220 depicted in FIG. 4) with theupgrade module 300 described above. Generated menus and video arecombined in the combiner 316 and output to an antitaping encoder 619.Any method of antitaping encoding known by those skilled in the art maybe used with the present invention.

FIG. 10 also depicts an expansion card 320 and an expansion cardinterface 320 for receiving the card 320. In addition, error correctioncircuitry 324 is shown receiving the demodulated signal, prior todemultiplexing the signal. FIG. 10 further depicts an optional camerainterface 326 and an optional microphone interface 328 for connectionwith a camera 2000 and a microphone 2002, respectively.

The enhanced functionality of the upgrade module 300 may alternativelybe included on the expansion card 320. In this embodiment, the upgrademodule 300 becomes an internal component of the simple decompression box302 and internally upgrades the box 302 to include menu generationcapability without using an external hardware upgrade module 300. Othervariations in the upgrade module 300 configuration are also possible.

b. Upstream Data Transmission Hardware

FIG. 11 shows a preferred set top terminal 220 that includes a datareceiver 332 and a data transmitter 344. The data transmitter 344provides upstream data communications capability between the set topterminal 220 and the cable headend 208. Upstream data transmissions areaccomplished using the polling system described with reference to FIGS.167 a and 7 b above, and, in particular, using a data transmitter 344.Both receiver 332 and transmitter 344 may be built into the set topterminal 220 itself or added through an upgrade module 300. Regardlessof the specific hardware configuration, the set top terminal's datatransmission capabilities may be accomplished using the hardware shownin FIG. 11.

FIG. 11 shows RF signals, depicted at 330, being received at by a datareceiver 332 and tuner 603 working in unison. Both of these devices areinterfaced with the microprocessor 602, which receives inputs, depictedat 338, from the subscriber, either through the set top terminal'skeypad 645 or remote control unit 900. All cable signals intended forreception on the subscriber's TV are accessed by the tuner 603 andsubsequently processed by the processing circuitry 340. This processingcircuitry 340 typically includes additional components for descrambling,demodulation, volume control and remodulation on a Channel 3 or 4 TVcarrier.

Data targeted to individual set top terminals 220 is received by thedata receiver 332 according to each set top terminal's specific addressor ID (e.g. set top ID 928, 928′). In this way, each addressable set topterminal 220 only receives its own data. The data receiver 332 mayreceive set top terminal specific data in the information field of theprogram control information signal frame described with reference toFIG. 7 a or on a separate data carrier located at a convenient frequencyin the incoming spectrum.

Any received data includes information regarding channels and programsavailable for selection. The subscriber may enter a series of commandsusing the keypad 645 or remote control 900 in order to choose a channelor program. Upon receipt of such commands, the set top terminal'smicroprocessor 602 instructs the tuner 603 to tune to the properfrequency of the channel or program desired and subsequently instructsthe processing circuitry 340 to begin descrambling of this channel orprogram.

Upon selection of a channel or program, the microprocessor 602 storesany selection information in local memory for later data transmissionback to the cable headend 208. Typically, the data transmitter 344operates in the return frequency band between 5 and 30 MHZ. In analternative embodiment, the frequency band of 10 to 15 MHZ may be used.Regardless, however, of the frequency band used, the data transmitter344 sends information to the cable headend 208 or network controller 214in the information field of the frame described with reference to FIG. 7b. Those skilled in the art will recognize that a number of variationsand combinations of the above-described set top terminal 220 hardwarecomponents may be used to accomplish upstream data transmissions.

c. Hardware Upgrades

In order to enhance a set top terminal's 220 functionality, thefollowing hardware upgrades may be used: (1) a Level A interactive unit,(2) a Level B interactive unit, (3) a Level C interactive unit withcompact disc capability, (4) a Level D digital radio tuner for separateroom use, and (5) a Level E information download unit. Each of theseupgrades is connected to the set top terminal 220 unit through theupgrade port 662 described earlier.

Level A, B and C hardware upgrades have similar hardware components.FIG. 12 a diagrams the basic components of the Level A, B and C hardwareupgrades, indicated generally at 100. The figure diagrams theinteraction between the hardware upgrades 100 and the set top terminal's220 basic components. As seen in the figure, CATV input signals arereceived by the set top terminal 220 using a tuner 603 and variousreceiver components described above (but denoted generally at 601 inFIGS. 12 a and 12 b). The set top terminal's microprocessor coordinatesall CATV signal reception and also interacts with various upstream datatransmission components 604, which have been described above.

The Level A, B and C hardware upgrades 100 each include a microprocessor104, interactive software 106, processing circuitry 108, bubble memory112, and a long-term memory device 116. In addition to these basiccomponents, the Level B hardware upgrade makes use of an additionaltelephone modem 120, while the Level C hardware upgrade makes use of anadditional CD-ROM storage device 122.

Along with their basic components, the Level A, B and C hardwareupgrades 100 each use their own interactive software 106. This softwaremay be used to provide the enhanced functional capabilities describedbelow. The Level A, B and C hardware upgrades also make use ofprocessing circuitry 108, which allows the set top terminal 220 to passthe subscriber's interactive input to the Level A, B and C hardwareupgrades 100 for interpretation. These commands are passed through theinterface linking the set top terminal's microprocessor with themicroprocessor of the Level A, B and C hardware upgrades 100. In thisway, subscriber inputs, entered through the set top terminal keypad orremote control, can be transferred to any of the hardware upgrades forprocessing and responses generated therein can then be sent back to theset top terminal 220 for display. In the preferred embodiment the IRcommands are transferred from set top terminal to hardware upgrade.

The Level A, B and C hardware upgrades 100 also include a long-termmemory component or device 116 that allows each hardware upgrade tointernally store data used with each interactive service. Such data mayinclude, for example, customized menu templates used by the individualinteractive services. In addition, the Level A, B and C hardwareupgrades include a bubble memory 112 for the temporary storage of, forexample, interactive questions and responses used in each particularinteractive service.

The Level A interactive unit allows the subscriber to access interactiveservices offering additional information about programs such as quizzes,geographical facts, etc. This information may be received by the set topterminal 220 in several data formats, including using the verticalblanking interval (VBI) or the program control information signal. TheLevel A interactive unit enables the subscriber to engage in textualinteractivity with the current television program using overlay menus.Some examples are quizzes, fast facts, more info, where in the world,products, etc, all of which provide the subscriber with an interactivequestion and answer capability. Although the Level A interactivecapability can easily be built into the set top terminal 220, such anembodiment increases the cost of the basic set top terminal 220.

The Level B interactive unit provides the user with access to onlinedatabase services for applications such as home shopping, airlinereservations, news, financial services, classified advertising, homebanking, and interactive teletext services. For example, with thisupgrade, a user will be able to reserve plane tickets or buy consumerelectronics. The primary feature of this upgrade unit is that it allowsactual transactions using two-way communications over modem with outsideservices. This added two-way communications capability may be with thecable headend 208 or, alternatively, over cellular networks, PCN orother communications media.

The Level C interactive unit employs a high volume local storagecapacity, including compact disc or other random access digital dataformats (e.g., CD-ROM 122). This unit allows use of interactivemulti-media applications. Such applications include, for example,computer games, multi-media educational software, encyclopedias, otherreference volumes (e.g. Shakespeare library), etc. In the preferredembodiment, many of these applications will interact with liveprogramming providing additional information and interactivity to thebasic program feed. For example, a viewer watching a show set in aforeign country may be able to retrieve additional information, maps,economic data, as well as other information about that country that arestored on the compact disc. In the Level C applications, the upgradehardware may closely monitor the television broadcast through additionaldata channels (e.g., vertical blanking interval, or other digital dataencoded within live video) providing context sensitive interactivity.

FIG. 12 b diagrams the interaction between the set top terminal 220 andthe Level D hardware upgrade, indicated generally at 130. As shown inthe figure, the CATV signals are input to the set top terminal 220through its tuner 603 and receiver components 601. As described above,the microprocessor 602 coordinates all cable television signal receptionby the set top terminal 220. The Level D hardware upgrade 130 makes useof a microprocessor 132, a tuner 134, a demodulator 136, a demultiplexer138, a decryptor 140 and an audio decompressor 142.

As shown in the figure, the set top terminal 220 and the Level Dhardware upgrade 130 interact through the interface linking therespective devices. The set top terminal's microprocessor 602 instructsreceived signals to be transferred to the Level D hardware upgrade 130for further processing. These received signals are input to the Level Dhardware upgrade, passed through the signal path comprising the tuner134 and other digital audio reception components (i.e., demodulator 136,demultiplexer 138, decryptor 140 and audio decompressor 142). Throughthe use of the hardware as configured in FIG. 12 b, the subscriber canselect a digital audio program for listening. The subscriber canaccomplish such selection through a subscriber interface (not shown),which may exist at the set top terminal 220 or, alternatively, at theLevel D hardware upgrade.

The Level D hardware upgrade allows the subscriber separate access tothe digital radio channels while other programming (not necessarilyradio) is being viewed on the television. Typically, this upgrade wouldbe used for digital radio usage in a separate room from that of thetelevision. The upgrade has a separate tuner, decompressor, and visualdisplay. In the preferred embodiment a second remote control (which ispreferably a scaled-down version of the set top terminal remote control,described below) is provided to access the digital audio system. Thisremote is equipped with a display.

The Level E hardware upgrade allows the subscriber to download largevolumes of information from the operations center 202 or cable headend208. The Level E hardware upgrade will enable subscribers to downloaddata, such as books and magazines, to local storage. Primarily, theLevel E hardware upgrade is an additional local storage unit (e.g., harddisk, floppy, optical disk or magnetic cartridge). Preferably, a smallportable reader, called “EveryBook™”, is also provided with the upgradeto enable downloaded text to be read without the use of a TV. Theportable reader is equipped with a screen.

The downloadable information may be text or video supplied by theoperations center 202 or cable headend 208. With this upgrade, books maybe downloaded and read anywhere with the portable reader. Using thisupgrade, video may be downloaded and stored in compressed form for laterdecompression. The video would be decompressed only at the time ofviewing. Important text that the public desires immediate access maymade available through this system. Text such as the President's speech,a new law, or a recent abortion decision rendered by the Supreme Courtmay be made immediately available.

Using a more sophisticated port, such as the SCSI port, multiplehardware upgrade units may be connected, or “daisy-chained” together, tooperate simultaneously. Although these upgrade units are describedseparately, the units may be combined or built into the set top terminal220. Those skilled in the art will recognize variations on suchcombinations of and additions to the set top terminal hardware.

d. Expansion Card Slot

In order to provide the greatest flexibility possible and prevent a settop terminal 220 from becoming outdated during the terminal's usefullife, additional electronic expansion card slots have been built intothe preferred embodiment. The expansion slots 665 (depicted in phantomin FIG. 5 b) are covered by the metal plate cover 664 as shown in FIG. 5b. It is anticipated that additional memory or capabilities may beneeded for certain customer features and also to update the system asthe cable delivery system's capabilities increase.

In addition to providing an additional memory capability, the expansioncard slot provides an easy method to upgrade the set top terminalhardware. In particular, expansion cards can be used to internallyprovide any of the Level A through E hardware upgrade features describedabove. Such embodiments, however, use the upstream data transmissionhardware, also described above (or built-in modem).

Functionally, the expansion card (not shown) may be inserted into anexpansion card slot 665, causing the connector on the expansion card toelectrically link with a connector on the set top terminal 220.Preferably, the frame of the set top terminal has a shelf or rackposition to hold the expansion card. The connector on the set topterminal 220 may simply be an electrical connection to the set topterminal's microprocessor and/or memory device or devices.Alternatively, the interface between the expansion card and the set topterminal 220 may be an electrical bus that allows the memory resourcesof the set top terminal 220 to be directly expanded. In this case, theexpansion card itself contains a memory device or devices that expandthe amount of program information or data that the set top terminal 220may access. Such memory devices include RAM, ROM, EPROM or EEPROM. Inaddition, the interface may be a “mailbox,” which resides in the set topterminal 220 as a single memory location. This embodiment facilitatesthe transfer of data between the set top terminal 220 and the expansioncard in either serial or parallel format. Such transfers are coordinatedand controlled by the set top terminal's microprocessor 602.

The use of expansion cards lowers the cost of the set top terminal 220itself, while also increasing its potential functionality. Thus, anexpansion card may include enhanced functional capabilities described aspart of the upgrade module discussion above and be designed toaccommodate any hardware upgrade compatible with the set top terminal220.

3. Remote Control and Subscriber Access of Set Top Terminal

The subscriber can access programs televised by the system through theset top terminal 220 using a remote control 900. FIG. 13 a shows atwo-section remote control 900 that accommodates such access. To reducecosts and make the set top terminal 220 as user friendly as possible, astandard television remote control 350, such as a Jerrold RC 650 remotecontrol or the like, may be augmented by adding a new section 352 thatprovides the additional digital menu access and ordering functions. FIG.13 a depicts the addition of menu access and cursor movement control tothe remote control 900.

The remote control 900 has an ordering button 354 and four-way cursormovement 356 that includes a “go” button 358 and menu access buttons360. The preferred remote control 900 operates using infrared (IR)signals, with the signals being received by the infrared (IR) sensor 630on the front of the set top terminal 220.

In the simplest embodiment, the remote 900, may be built with onlycursor movement and a go button. In more sophisticated embodiments, theremote control 900 may be provided with buttons that are programmable toperform specific functions for a series of entries. An intelligent orsmart remote control 900 would increase both the cost and capability ofthe set top terminal 220 system. Using the augmented remote control 900depicted in FIG. 13 a, a subscriber can navigate the program menu systemof the set top terminal 220.

FIG. 13 b shows an alternative and preferred embodiment of the remotecontrol 900 for use in the present invention. Standard televisionreceiver remote control switches or buttons 362 may be used, includingvolume control, channel select, power and signal source buttons, as wellas other menu buttons 364, including cursor movement, cursor select,menu select, and pay television buttons arranged longitudinally on theremote control 900, as opposed to the width-wise separation, as shown inFIG. 13 a. The color of the buttons or the surrounding background maydiffer between the standard television remote control buttons 362 andthe menu buttons 264 to differentiate visually between these two groupsof buttons.

The width and depth of the remote control unit 900 are considerably lessthan the length to allow the remote control unit 900 to fit easilywithin a user's palm. The remote control unit 900 preferably has itscenter of mass balanced substantially near the longitudinal middle. Thisbalance allows a user's thumb to naturally be placed in substantiallythe middle portion of the remote control unit 900, when it is picked upby a user.

Since the center of mass of the remote control unit 900 is placedsubstantially near the longitudinal middle of the remote control unit900 (thereby having a user's thumb naturally fall in this same centerregion), the standard remote buttons 362 and menu access switches orbuttons 364 most frequently accessed and depressed by a user are placedin the central region of the remote control unit 900 within easy reachof the user's thumb. Channel and volume increment and decrement buttons366 are placed near this center of mass and longitudinal center line.The channel buttons 366 are preferably beveled in opposing directions toallow a user to feel for and press a desired button without looking downat remote 900. Similarly, the volume buttons 368 are preferably beveledin opposing directions for the same reason. Additionally, the channelbuttons 366 could have a surface texture different from those of thevolume buttons 368 to allow even easier differentiation.

Also placed in the longitudinal center, within easy reach of a user'sthumb, are cursor movement buttons 370 and a “go” button 372. The “go”button 372 selects an option corresponding to the placement of thecursor. As opposed to buttons, a joystick may be used with a selectionon the stick, or a trackball, depressible for selecting a desiredchoice. The cursor buttons 370 are placed ninety degrees apart, with the“go” button 372 placed within the center of the cursor movement buttons370, as shown in FIG. 13 b. The cursor movement buttons 370 arepreferably beveled inwardly toward the “go” button 372 and the “go”button 372 is recessed below the level of the cursor movement buttons370 so that it is not accidentally pressed while depressing the cursormovement buttons 370. In addition to the beveling on the cursor movementbuttons 370, these buttons may also have a surface texture to allow auser to feel for and select the appropriate button without looking downat the remote 900 and directional arrows could be raised or recessed onthe surface of the cursor movement buttons 370 for this same purpose.

Menu select buttons 374 are placed near buttons 370 as shown in FIG. 13b. Menu select buttons 374 are preferably the largest buttons on theremote control unit 900. Menu select buttons 374 preferably have iconsor other graphics imprinted on their top surface or adjacent tocorresponding buttons. For example, a button for the sports major menumay contain a baseball icon. The icons represent the programmingavailable on the particular major menu selected by the menu selectbuttons 374. The icons may also be raised above the level of the menuselect buttons to provide a textured surface. This textured surfacewould allow a user to select an appropriate menu button 374 by feel,without looking at the remote control unit 900. The icons would requiresubstantial differences in texture, while still providing a meaningfulgraphic related to the associated menu.

As shown in FIG. 13 b, labels and icons are provided for the followingmajor menus: movies, sports, children's programming, documentary/news,entertainment, magazines, programming guide, HDTV (high definitiontelevision), interactive TV, music, and an additional button 376 forfurther programming. Menu select buttons 374 may also be labeled Athrough J for the above programs, with the last button for alladditional major menus labeled K-Z.

Although the remote control unit 900 is described with a variety ofchannel selection buttons, nearly all buttons from a standard remotecontrol (section 362 buttons) could be eliminated. The present inventionwould allow a subscriber to use a remote control unit 900 containingonly menu select buttons 374 and/or cursor movement and select buttons,370, 374, respectively.

As used herein, “button” is contemplated to include all manner ofswitches or touch sensitive circuitry to activate a particular functionin the remote control unit 900. Additionally, although the remotecontrol unit 900 communicates with the set top box by means of infraredtransmission, other forms of communication are contemplated, includingultra-sound, radio frequency and other electromagnetic frequencycommunication.

To support video calling capabilities, the remote control unit 900preferably includes a call answer button (not shown) and a call hangupbutton (not shown). The call answer button and the call hangup buttonmay be separate buttons or the same button. To support video callingwith outgoing video, the remote control unit 900 preferably includes acamera activation button (not shown) and buttons or other controls forpointing the camera 2000. The cursor movement buttons 370, a joystick, atrackball or something similar can be used for camera pointing in acamera control mode.

4. Advanced Features and Functional Capabilities

a. Overview

In the preferred embodiment, the set top terminal 220 will includefeatures that are now being adopted in the industry, including parentalcontrols and locks, electronic diagnostics and error detection, muting,on-screen volume control, sleep timer, recall of last selection, etc.Each of these features has a corresponding menu (or overlay menu) thatallows on-screen customizing and activation of the feature.

The preferred set top terminal 220 also supports a number of advancedfeatures and functional capabilities. This set top terminal 220 providessubscribers with a picture-on-picture capability without requiring aspecial television to support the capability. The set top terminal 220also supports a program catalogue Service, which provides subscriberswith information on all programming available at its particularsubscriber location. The set top terminal 220 further includes thecapability of querying viewers to establish, among other things,favorite channel lists, personal profile data and mood information. Theset top terminal 220 allows the subscriber to view promotional menus onfuture programming events.

The set top terminal 220 supports additional capabilities using itshardware upgrades that allow subscribers to use other interactiveservices, for example, to engage in on-line question and answersessions, to order and confirm airline tickets, and to access a varietyof other data services. The set top terminal 220 makes use of a digitaltuner as a hardware upgrade to provide subscribers with a digital audiocapability.

The preferred set top terminal 220 may be used to control video tapemachines, thereby simplifying the recording of programs. The set topterminal 220 can, in conjunction with the program delivery system,easily support high definition television (HDTV). For subscribers livingin remote locations, the set top terminal 220 accommodates backyardsatellite systems.

In addition to all the features that the set top terminal 220 supportswith its current internal programming and upgradeability, additionalfeatures may be added or existing features increased through remotereprogramming of the set top terminal 220. Utilizing the residentoperating system on the read only memory (ROM), the cable headend 208 isable to reprogram the random access memory (RAM) of the set top terminal220. With this capability, the cable headend 208 can remotely upgradesoftware on the set top terminals 220.

Reprogramming will occur by using the program control informationsignal, with the appropriate signals sent over this signal. In analternative embodiment, one channel is dedicated for the specialprogramming needs. When reprogramming is to occur, the cable head endwill send an interruption sequence on the program control informationchannel that informs the set top terminal 220 that reprogramminginformation is to follow.

b. Picture-On-Picture Capability

Although the preferred embodiment of the present invention decompressesone channel at a time for the viewer, users who desire apicture-on-picture capability can be provided with a set top terminal220 have upgraded hardware components that allow two channels to betuned and decompressed at any given time, and video from a video call tobe combined with one or both video programs. Once two signals areavailable, the picture-on-picture capability can be made fully availablein the set top terminal 220, without requiring a special television.

FIG. 14 diagrams one embodiment for implementing the picture-on-picturecapability. Such implementation necessarily requires the use of twotuners 603, 603′ and two decompressors 618, 618′ so that two separatevideo programs may be displayed simultaneously on the subscriber'stelevision screen. As shown in the figure, the CATV input signal isreceived by the set top terminal 220 and input into two separate tuners.These tuners will each tune to a separate television program, both ofwhich will be simultaneously displayed on the subscriber's television.The two television programs are extracted from the CATV input signal bythe two parallel signals paths depicted in FIG. 14.

Each signal path is substantially identical (therefore the componentsthereof are commonly numbered, with callout numbers of the components ofone path carrying the prime indicator) and thus, only one path will bedescribed. Each signal path shown includes a tuner 603, a demodulator606, a demultiplexor 609, a decryptor 600 and various decompressiondevices. As the respective signals pass through these devices, themicroprocessor 602 coordinates the signal processing to produce adecrypted program signal. The decrypted program signal is furtherpartitioned between audio, on the one hand, and video, graphics andtext, on the other. The audio signals extracted are passed to an audiodecompressor 612, which further processes the audio for output to thesubscriber's television.

The embodiment diagramed in FIG. 14 shows only single audio channels foreach video channel tuned by the individual tuners. As described above,the number of audio channels will typically include four audio signalscorresponding to a single video channel. At least two of these audiosignals may be used for stereo television play. Although the subscribercan view two separate video pictures simultaneously through thepicture-on-picture capability, the subscriber's television can onlyaccommodate a single audio signal at a time (or two audio signals forstereo audio reception). Thus, the set top terminal hardware shown inFIG. 14 must also include a switch (not shown), which accommodates thesimple switching between each audio signal or signals that correspond toone video picture or another. Such an audio switch, which is a componentwell known in the art, allows the subscriber to listen to the audio ofone picture or the other. The video, graphics and text portion of theprogram signal are routed through another demultiplexor 314, which, inturn, separates all video, graphics and text of the signals. Thesesignal parts are stored in a memory device 620 within the set topterminal This memory device may be a ROM, RAM, EPROM, or EEPROM.

The microprocessor 602 initiates and coordinates further decompressionof the video, graphics and text for each of the program signals. Oncethese signal parts are decompressed within the set top terminal 220,these components are passed to a video combiner 316. The video combinercorrelates and combines the video, graphics and text of the two programsignals. The video combiner outputs these two signals for display on thesubscriber's television. These signals may also pass through an NTSCencoder 625 to produce analog NTSC video waveforms, which may likewisebe displayed on the subscriber's television. Such display necessarilyrequires that each signal pass through an RF modulator 605 in order tobe input into a television. In this way, two separate RF video outputsare produced. Each video signal produced by the RF modulators has itsown corresponding audio outputs produced by each audio decompressor.

Each video signal (and its corresponding audio signal) produced by thetwo tuner configuration can be simultaneously displayed on thesubscriber's television, which has a picture-on-picture capability, or,alternatively, the set top terminal 220 itself can create thepicture-on-picture image for display. Such display involves the scalingand repositioning of one of the video (and audio) signals so that bothpictures produced can be viewed simultaneously. In so doing, thesubscriber's television can display one of the pictures as a full screendisplay, with the other picture being displayed as a scaled andrepositioned display overlayed on the full screen display. To implementsuch a technique, the set top terminal 220 must include the hardwarecomponents necessary to produce a picture-on-picture capability,including hardware capable of scaling, repositioning and overlayingimages. Such an advanced set top terminal 220 allows the subscriber tomake use of a picture-on-picture capability even though the subscriber'stelevision cannot alone produce such a result.

The video combiner 316 can also combine with one or both of the programvideo signals video from one or more video calls.

c. Program Catalogue Service

Referring to FIG. 15 and to FIG. 8, in the preferred embodiment of thepresent invention, program catalogue menu 1100 listing programsavailable on network schedules, will be available as a major menu of thetype shown as 1020. In the preferred embodiment, the major programcatalogue menu 1100 would offer submenus, such as network schedules forthe next seven days, today's network schedules for the next six hours,and TV program catalogue picks for the next seven days.

In order for the set top terminal 220 to provide a program catalogueservice, the set top terminal 220 must receive information on allprogramming available at its particular subscriber location. Thisinformation will be sent to each set top terminal 220 as part of theprogram control information signal or STTCIS. The program controlinformation signal would include, among other things, all programmingscheduled for the next 7 days. This programming information would, forexample, include the name of each program, the type of program, theprogram start time, the length of the program, the date the program willbe shown, a brief description of the program and whether or not theprogram is closed-captioned, among other information.

All programming information sent to the set top terminal 220 for usewith the program catalogue service will be stored in the set topterminal's internal memory. Upon selection of the program catalogueservice by the subscriber, the microprocessor accesses the memory 9device during its menu generation and creation process. In this way, theprogramming information will be combined with the program catalogue menuor submenu template to produce the Program catalogue service. Theprogram catalogue service may involve the use of more than one menu,especially where the network scheduling information covers time frameslonger than a few days.

If the particular set top terminal 220 has been subscribed to theprogram catalogue service, the subscriber may proceed to a submenushowing schedules of programs. If the subscriber chooses the networkschedule submenu 1102, he is offered a list of network schedules tochoose from. If a subscriber were to choose, for instance, HBO, anHBO-specific submenu (not shown) would appear and allow a subscriber tochoose a date of interest to see what programs are available on thatparticular date.

d. Querying Viewer

To support a variety of services, the set top terminal 220 is capable ofquerying the viewer and recording viewer responses. For example, inorder for the set top terminal 220 to establish a favorite channel listas shown at 1100 in FIG. 16 a depicting the broadcast TV menu 1112,menus querying the subscriber and allowing the subscriber to input hisselection of eight favorite channels is displayed.

After querying the subscriber for a list of popular shows the terminaldisplays a submenu allowing the subscriber to choose one of thesubscriber's favorite or popular shows for viewing. Although variousembodiments of menus are possible, the goals of each are the same—toeliminate or augment printed guides to television programs. In analternative embodiment, a program viewing suggestion feature isavailable as an additional feature. This feature gives the indecisive orlazy viewer suggestions as to which programs the viewer should watch.The set top terminal 220 uses a matching algorithm to accomplish thisprogram suggestion feature. This program suggestion feature is describedin detail in U.S. Pat. No. 5,798,785, dated Aug. 25, 1998, entitled,TERMINAL FOR SUGGESTING PROGRAMS OFFERED ON A TELEVISION PROGRAMDELIVERY SYSTEM, incorporated herein by reference.

In order for the set top terminal 220 to make decisions on whichprograms the subscriber should watch, the terminal must create apersonal profile for the particular viewer. From the data in theparticular viewer's personal profile and the television programinformation available in the program control information signal, the settop terminal 220 is able to select a group of programs which theparticular viewer is most likely to watch.

In order for this feature to operate, a personal profile for each viewercan be gathered by the set top terminal 220 and stored in a memory file.The personal profile consists of demographic information that may begathered in a number of ways. The set top terminal 220 builds thepersonal profile for each viewer and stores the information in a memoryfile by viewer name. To build a personal profile in the preferredsystem, the viewer answers a series of questions presented on a seriesof menu screens. These personal profile screens request the viewer toinput information such as name, sex, age, place of birth, place of lowerschool education, employment type, level of education, amount oftelevision program viewing per week, and the number of shows inparticular categories that the viewer watches in a given week such as,sports, movies, documentaries, sitcoms, etc. Any demographic informationwhich will assist the set top terminal 220 in targeting advertisementsto the viewer or suggesting programs may be used.

Once a personal profile has been created (in a particular set topterminal 220), it can be indefinitely stored in nonvolatile memory. Aselection at the home menu screen 1010 (FIG. 8) activates the programselection feature. Following activation of the feature, the set topterminal 220 will present the viewer with a series of brief questions todetermine the viewer's mood at that particular time, as shown in FIG. 16b. For example, the first mood question screen 1114 may ask the viewerto select whether the viewer desires a short (30 minute), medium (30-60minute), or long (60 plus minute) program selection. The second moodquestion screen 1116 requests the viewer to select between a seriousprogram, a thoughtful program, or a light program, as shown in FIG. 16c. And the third mood question screen 1118 requests whether the userdesires a passive program or an active program, as shown in FIG. 16 d.The viewer makes a selection in each question menu, utilizing the cursormovement keys and “go” button on the remote control unit 900.

After the viewer has responded to the mood question menus whichdetermine his mood, the set top terminal 220 uses the personal profileinformation and mood information to find the best programming matchesfor the viewer. The set top terminal 220 displays an offering of severalsuggested programs to the viewer. With this program selection feature,the set top terminal 220 can intelligently assist the specific viewer inselecting a television program.

The personal profile information may also be used in targetingadvertisements. In the preferred embodiment, the network controller 214can target specific advertisements to individual cable distributionnetwork nodes or, alternatively, to individual subscribers. In order toaccomplish the advertisement targeting capability, the networkcontroller 214 transmits packages of advertisements to the cabledistribution network nodes or subscribers for eventual display on theset top terminal 220. When the video that the subscriber is watchingnears a break for a commercial, a specific advertisement or set ofadvertisements is specifically targeted to a particular set top terminal220 based on the personal profile information described above. Althoughthe network controller 214 is the component in the program deliverysystem which provides this targeting capability, the set top terminal220 accommodates transparent channel switches to display the targetedadvertisement. In this way, although the subscriber thinks that the settop terminal 220 is tuned to a specific channel, an advertisement fromanother channel is displayed on the subscriber's television.

The hardware required to accommodate such transparent channel switchingcapabilities are shown in FIGS. 17 a and 17 b. FIG. 17 a shows the settop terminal hardware components which accommodate channel switchingwithin a single 6 MHZ channel bandwidth. These components include atuner 603, a demodulator 606, a demultiplexer 609, a multiplexer 400, adecompressor 622, a microprocessor 602, and local memory M. The tuner603 operates by tuning to a specific 6 MHZ bandwidth which includes thedisplayed video and a number of channels carrying advertisements. Thedemodulator 606 processes these signals and sends them to thedemultiplexor 609, which converts the received signal into separateprogram and advertisement signals. During this processing, themicroprocessor 602 coordinates the demultiplexing of the programmingsignals. Once the video signal pauses for a commercial break, themicroprocessor 602 instructs the multiplexer 400 to select theadvertisement or advertisements for decompression and subsequent displayon the subscriber's television. This hardware configuration allows theset top terminal 220 to switch between channels within the MHZ bandwidthand display various advertisements for viewing, regardless of the videocurrently being watched by the subscriber.

Where a targeted advertisement falls outside the tuned 6 MHZ bandwidthcontaining the video that the subscriber is currently watching, thehardware configuration shown in FIG. 17 b is used. In thisconfiguration, the microprocessor 602 instructs the tuner 603 to retuneto another 6 MHZ channel bandwidth, as represented by bi-directionalarrow A.

Working together, the microprocessor 602 and tuner 603 allow targetedadvertisements, which have been transmitted in another 6 MHZ bandwidth,to be tuned with minimal acquisition time and delay. In particular, thisconfiguration allows the set top terminal 220 to tune outside a given 6MHZ bandwidth (to another 6 MHZ bandwidth) in order to select a targetedadvertisement for display. This alternative embodiment may require theuse of a full screen mask in order to minimize any annoying screenrolling during the tuning process. The masking is intended to cover anyglitches which would otherwise be displayed during the acquisition time(e.g., 0.5 seconds) for retuning to another 6 MHZ channel bandwidth.

Where the acquisition time or delay becomes unreasonable, an alternativeembodiment (not depicted) can include the use of two tuners similar tothe configuration used above for the picture-on-picture capability. Thisalternative configuration using two tuners trades an increased cost forlower acquisition times. Those skilled in the art will recognize anumber of other configurations of set top terminal hardware that willaccommodate a transparent channel switching feature. A more detaileddescription of target advertising and channel switching is provided inco-pending U.S. patent application Ser. No. 08/735,549, filed Oct. 23,1996, entitled, METHOD AND APPARATUS FOR TARGETED ADVERTISING, and U.S.patent application Ser. No. 09/054,419, filed Apr. 3, 1998, entitledTARGETED ADVERTISING USING TELEVISION DELIVERY SYSTEMS, incorporatedherein by reference.

e. Promotional Menus

FIG. 18 depicts the use of a promotional menu 1120 used to sellsubscriptions to services in the system 200. This promotional menu istailored to Level B interactive services which include a variety ofon-line type services such as Prodigy, Yellow Pages, AirlineReservations, etc. A similar menu is used for Level A interactiveservices that offers subscribers additional information about programssuch as quizzes, geographical facts, etc. Such information may bereceived by the set top terminal 220 in several data formats, includingin the vertical blanking interval (VBI) and in the program controlinformation signal.

Other promotion menus similar to menu 1120 may be used for the Level Cinteractive services. The Level C interactive services utilize localstorage such as CD technology (e.g., 122) to offer an enormous range ofmulti-media experiences. The Level C interactive services require ahardware upgrade as described earlier. Specially adopted CD-I and CD-ROM122 units are used for this service.

Typically, promotional menus may be generated when a subscriber selectsa nonexistent channel, creating a virtual channel. Such virtual channelsdo not require any additional bandwidth since these channels do notcarry any of the data required to create a promotional menu. Instead,when the subscriber selects a channel that does not exist (e.g., Channel166), a virtual channel is created using data sent to the set topterminal in a number of ways. For example, the data may be sent in thevertical blanking interval (VBI) of another channel, out-of-band, orwith the menu information sent from the headend 208 in the set topterminal control information stream (STTCIS). The data will be used tocreate graphics stored locally at the set top terminal 220 as an NTSCvideo signal which may be displayed on the subscriber's television. Inthis way, a promotional menu may be drawn and a virtual channel iscreated. This capability simply provides the set top terminal 220 withthe ability to display a promotional menu or graphics display whenever anonexistent channel is selected by the subscriber.

f. Other Interactive Services

FIGS. 19 a and 19 b show menus (1130 and 1132, respectively) that areavailable using the interactive Level A services. Referring to FIG. 19a, when interactive Levels A services are available for a televisionprogram, the system will display an interactive logo 1134 consisting ofthe letter “I” and two arrows with semicircular tails. In the preferredembodiment, the set top terminal 220 will place the interactive logo onthe television screen as an overlay menu. In the preferred embodiment,the set top terminal 220 will detect that there is data or informationavailable about a television program which can be displayed to asubscriber using the interactive service. When the set top terminal 220senses that there is interactive information available, it will generatethe interactive logo overlay menu 1134 and place it on the televisionscreen. For example, the set top terminal 220 will detect thatinformation on a television program is being sent in the verticalblanking interval (VBI) and generate an interactive logo overlay menu1134 which will appear on the subscriber's television screen forapproximately fifteen seconds during each ten minute interval ofprogramming. Similarly, the set top terminal 220 can sense that theprogramming has closed caption information available and place a closedcaption logo on the screen.

Referring to FIG. 19 b, when the subscriber sees the interactive logo1134 on the television screen, the subscriber is made aware of the factthat interactive services are available in conjunction with histelevision program. If the subscriber presses the interactive remotecontrol button, another overlay menu 1133 will be generated by the settop terminal 220 and placed on the screen. This overlay menu 1133 isshown in FIG. 19 b being overlayed on an interactive television program.From this menu 1133, the subscriber may select a variety of differenttypes of textual interactivity with the current television program, asat 1134, including quizzes, fast facts, more info, where in the world,products, etc. At any time during the interactive submenus, the user mayreturn to the television program without interactive features.

Another submenu 1136 gives additional information related to thetelevision program to the viewer in textual form in the lower half ofthe screen. In FIG. 19 b, the submenu 1136 shows the availableinteractive options for the subcategory “quiz.” In this interactivesubcategory, the user is presented with questions and a series ofpossible answers. If the subscriber desires, the subscriber selects oneof the answers to the quiz question. After the selection, the set topterminal 220 sequences to another menu. The set top terminal 220sequences to the interactive quiz answers submenu which informs thesubscriber whether the correct answer was or was not chosen.Subsequently, another submenu would show correctly or incorrectlyanswered quiz question.

FIG. 20 a is an example of a submenu for Level B interactive services.From this menu screen 1141, any of a number of on-line data servicescould be accessed. One service, the airline reservations selection 1142,has been chosen by the subscriber on this menu.

In selecting airline reservations, the subscriber encounters a sequenceof menus as for any on-line data service. Referring to FIG. 20 b, thesubscriber is typically shown a submenu, such as submenu 1144, for thedata service offering various options. In each of these submenus relatedto a data service, the subscriber is able to exit, returning to the homemenu 1010 or regular cable TV.

FIG. 20 b, the airline information and reservation submenu 1144, allowsa subscriber to view six available flights. A subscriber may select oneof the flights to check on its availability. Another similar submenuallows a subscriber to enter the month, day and year for theavailability date desired. In this submenu, the subscriber is offeredthe option of correcting any errors in the entered information.

FIG. 20 c is another airline submenu 1150 that allows a subscriber toview remaining seats available on a flight, enabling the selection of aseat assignment. This interactive submenu 1150 is an example of howinformation may be graphically shown to a subscriber using a portion ofthe menu and different coloring schemes. In this interactive menu, thelower half of the screen 1152 shows the passenger compartment of anairplane with all the seat locations graphically represented by squareblocks. By coloring the available seat locations in blue and theunavailable seat locations in a different color, the menu can present agreat deal of information in a limited amount of space. This graphicpresentation of information for the interactive on-line data services isan important method of visually displaying large amounts of informationto the subscriber.

Referring to FIG. 20 d, another submenu 1156 allows the subscriber tochoose a one-way or round-trip ticket, to confirm reservations and tocharge an airline ticket by credit card, choosing the appropriate stripmenu on the lower part of the screen. In this particular menu 1156, thesubscriber is charging a round-trip plane ticket on a credit card. Thesubscriber simply needs to enter the credit card number, expirationdate, and credit card type to charge an airline ticket. Other submenusmay process the subscriber's credit card charge for the airline ticket,confirm the subscriber's airline ticket purchase, and pass thisinformation to the location where the ticket is printed.

Using the methods and hardware described, a variety of interactiveservices are possible. Those skilled in the art will recognize that suchinteractive services may be accommodated by the preferred set topterminal 220.

g. Caller ID

Using the capability of the set top terminal and a connected modem, theset top terminal is able to perform the function of caller ID. Thecaller ID function of the set top terminal assists the viewer in amanner similar to the caller ID function provided by telephonecompanies. However, the set top terminal is able to use the televisionas its display means to communicate to the viewer information aboutincoming telephone calls. Also, the strong local processing capabilityof the set top terminal allows the caller ID function to be much moreuser friendly and convenient.

If the set top terminal senses that a viewer is using the system andwatching television, then the caller ID feature would automatically beactivated. When the caller ID function is active, the set top terminalsoftware will monitor incoming telephone calls to the viewer through themodem. After the set top terminal senses that the phone is ringing,signals are received on the tip and ring lines of the telephone, thesystem will immediately look for incoming telephone data identifying thetelephone number from which the telephone call was initiated.

Upon receiving the telephone number from which the call was initiated,the preferred embodiment of the caller ID compares the telephone numberwith a list of telephone numbers stored in memory. The list of telephonenumbers stored in memory is cross referenced to a list of names, othertextual data or graphics. When the set top terminal finds a matchbetween the telephone number and a number stored in memory, thecorresponding text or graphics are displayed on the television screen.For example, “GRANDMA” and a “smiley face” graphic can be flashed acrossthe television screen using an overlay menu.

In this manner the viewer may see the name (and identifying icongraphics) of the person placing the call and can decide whether toactivate an automatic telephone message recording system or answer thetelephone call. After generating an overlay menu, the set top terminalsoftware awaits an IR command signifying a viewer response. With thesimple depression of a button on the remote control, the viewer caninstruct the set top terminal to send an activation signal to theautomatic telephone message system (through a set top terminal port).Thus, the viewer can continue to watch a program and know the identityof a caller without taking his or her eyes off the television. If a dumbtelephone message system is used, the viewer can simply allow thetelephone to ring the requisite number of rings until the telephoneanswering machine normally activates and answers the call.

In an alternative embodiment, having no stored telephone numbers, theset top terminal may just flash the incoming telephone number on thescreen using an overlay menu. In a more sophisticated embodiment, amicrophone is provided in the set top terminal or remote control unit.Using the television's speakers, a remote control, and a microphone, theviewer is able to answer the telephone using the keys of the remotecontrol without taking his or her eyes off the television screen.

h. Digital Audio Capability

Referring to FIG. 21, the digital audio feature of the invention allowsa subscriber to listen to CD quality audio selections through thesubscriber's stereo (not shown). This can be accomplished by runningcables directly from the set top terminal 220 (which may include a LevelD hardware upgrade) to the subscriber's amplifier/stereo system.Alternatively, the subscriber may listen to audio selections through thesubscriber's television system.

In the preferred embodiment, the digital audio feature uses a Level Dhardware upgrade as a digital radio tuner. This Level D hardware upgradeenables a subscriber to use the program delivery system's digital audiosignaling capability. Digital audio transmissions require much lessbandwidth than that used for the transmission of a digital videosignals. Thus, hundreds of digital audio programs are delivered to eachset top terminal 220 in limited segments of bandwidth.

Where digital audio programs are delivered to the set top terminal 220,the Level D upgrade (shown in FIG. 13 b) provides the subscriber withthe means to select a given digital audio program for listening.

The Level D hardware upgrade makes use of a tuner 603 that is separatefrom the tuner 603 used by the set top terminal 220 for video display.The digital audio signal is received at the set top terminal 220 overthe CATV transmission media. The set top terminal 220, in turn, routesthe digital audio signal to the components of the Level D hardwareupgrade. These components may include: a tuner 603, demodulator 606,demultiplexer 609, decryptor, decompressor 622, remote control interfaceand microprocessor 602.

The Level D hardware upgrade will use its tuner 603 to tune to thespecific digital audio program selected by the subscriber andsubsequently demodulate, demultiplex and decrypt the digital audiosignal. Upon completion of this processing, the digital audio signalwill be decompressed to produce a processed digital audio signal readyto be output to the subscriber's stereo or directly to speakers.

The Level D hardware upgrade includes ports for the digital audio signaloutput, which provide the necessary connections for transmission of thesignal from the Level D hardware upgrade to the subscriber's stereo. Inaddition, the Level D hardware upgrade include a small LED display thatcan show the channel number of the program selected, date and time,among other display fields.

The Level D hardware upgrade can be physically located in a differentroom from that of the television and set top terminal 220. Thus, theLevel D hardware upgrade will have its own remote control device (notshown), albeit with less available options and keys than the set topterminal's remote control 900 described above. This Level D hardwareupgrade remote control is more limited than the set top terminal'sremote control 900 since the Level D remote control will be usedexclusively for digital audio program selection. This limited remotecontrol, nevertheless, includes a small LED or LCD display that is usedto display the channel number of the digital audio program selected.Alternatively, the set top terminal's remote control may be programmedfor use with the Level D hardware upgrade so that an additional remotecontrol is not required to use the digital audio feature.

Using either remote control embodiment, the subscriber accesses theLevel D hardware upgrade to select a digital audio program. The remotecontrol sends an IR command signal to the Level D hardware upgrade,instructing the unit's microprocessor 602 to initiate the selection of agiven program. The desired program is processed (i.e., tuned,demultiplexed, decrypted and decompressed) as described above andtransmitted to the subscriber's stereo for listening.

The selection of a digital audio program does not necessarily requireinteraction with the subscriber's television. Instead, allcommunications required to select a digital audio program may occurbetween a remote control and the Level D hardware upgrade. As a result,the subscriber's television need not be turned on for the digital audiocapability to operate.

Alternatively, the Level D hardware upgrade can be co-located with theset top terminal 220 and the subscriber can select a digital audioprogram through a menu displayed on the subscriber's television. In thisembodiment, the subscriber would use the set top terminal remote controlto access a digital audio program selection menu.

In an alternative embodiment, the set top terminal 220 includes all thefeatures of the Level D upgrade and, therefore, no upgrade is necessary.Those skilled in the art will recognize other alternatives that allowdigital audio reception.

FIG. 21 is a major menu 1160 displaying the digital audio programchoices which are available for subscribers who have paid the monthlyfee. In a chart format 1162, the major menu shows the top five, ten, andforty songs available in six different categories of music. Below thechart, the system is able to provide a text message 1164 describing theparticulars of the audio program selected. Using the same logos and menuformat, the system can provide a text description enticing thesubscriber to pay the monthly fee and join the service. For example, onemenu may allow the user to test the system with a free demonstration.Another menu allows the subscriber to request additional promotionalinformation about the system. Such menus may be used throughout the menusystem.

From any of the menu screens for the digital audio feature, thesubscriber may return to regular cable TV with the press of a singlebutton.

i. VCR Control

Referring to FIG. 22, the advanced system of the set top terminal 220 isused to control video tape machines and simplify recording programsusing a Guide Record feature. The set top terminal 220 has a separateoutput 650 for a VCR. Control signals a retransmitted through the VCRoutput of the set top terminal 220 and input to the VCR to allow the VCRto be automatically controlled by the set top terminal 220. Using theset top terminal 220, certain programs are selected by a subscriber frommenus, and the VCR will be automatically activated to record theselected program.

In order to accommodate the VCR control feature, the set top terminal220 sends instructions or control signals to the VCR. Such controlsignals are initiated by the set top terminal's microprocessor 602 andpassed to the VCR either using a separate connection or as part of thevideo signals processed for display on the subscriber's television.These control signals are sent directly from the advanced set topterminal 220 to the VCR, instructing the VCR when to begin and endtaping of a particular program.

The microprocessor 602 coordinates the dissemination of control signalssent to the VCR, storing the content of such signals in local memory.Upon nearing the time for the program to be displayed, themicroprocessor 602 activates the menu generation software to display anotification menu or screen, notifying the subscriber that the programis nearing the time for display. This reminder will also request thesubscriber to check whether a tape has been inserted into the VCRitself.

The subscriber can initiate the VCR control feature by accessing a VCRcontrol submenu, which requests whether the subscriber wishes to recorda program selected for future viewing. In this way the subscriberinteractively enters such information on the menu screen or displayusing any of the hardware described above that accommodates subscriberinteractive response capabilities.

In the preferred embodiment, the subscriber will use a movie library inconjunction with his VCR or other video taping machinery. The movielibrary is a menu selectable list of available movies. In that way, asubscriber may tape movies which are shown at inconvenient start timesfor later viewing. By enabling the proper features of the set topterminal 220, a subscriber can have the terminal activate the televisionand the VCR and perform all the functions necessary to tape a movie.

After the VCR control feature is initiated, a menu screen confirms themovie selection, start date and start time and informs the subscriberthat the VCR will be automatically turned on. During this submenu, theuser may return to the movie library major menu, or regular TV or cancelthe movie library order by pressing the escape button. This menu showsthat the subscriber has chosen to return to regular TV. The subscriber'sVCR or other video taping equipment must be connected to the set topterminal 220 for the automatic taping feature to operate.

Following a program choice, a program description submenu is placed onthe television screen. In addition, from this program descriptionsubmenu, the viewer may choose to record the selected program on his VCRusing the guide record feature. If the guide record feature is chosen,the guide record submenu 1170 shown in FIG. 22 provides the subscriberwith further instructions. In order for the set top terminal 220 toperform the guide record functions and operate the VCR, control signalsare sent from the set top terminal 220 to the VCR via the videoconnection 650 or through a separate connection between the set topterminal 220 and the VCR. The VCR is capable of interpreting thesecontrol signals from the set top terminal 220 and performing the desiredfunction (such as, activating the record feature). In the preferredembodiment, the VCR control signals are sent with the video signal andoutput from the output 650, as described above. Alternatively, aseparate connection between the set top terminal 220 and VCR may beused.

j. HDTV Capability

The set top terminal 220 and program delivery system of the preferredembodiment can easily support high definition television (HDTV). Thecombination of digital video, compression and no restricted bandwidthlimitation per channel makes the preferred system ideal for HDTV. Thegreater information flow of HDTV causes no problems for the system. Themenu selection system of the preferred embodiment is a user friendlymanner of presenting HDTV programming to the subscriber.

FIG. 23 shows the integration of HDTV services into the menu-drivenprogram delivery system. If the subscriber selects the major menu forHDTV 1032, the subscriber will receive either a description of theservice with a suggestion to order the system, or a text note that thesubscription is current and a listing of the currently available programselections in HDTV. If the subscriber has not paid to join theparticular service, HDTV, the subscriber may be allowed to join one ofthe programs in progress for a limited time as a demo to entice thesubscriber to order.

If a subscriber has paid the HDTV fees, the subscriber proceeds as inany other major menu screen. This particular major menu shows an exampleof how a follow-on or second screen may exist for the same menu. In thisparticular case, a second screen exists for the major menu HDTV 1032.The subscriber may access the second screen by selecting the last menudisplay block 1172 “Other HDTV Selections” in the lower part of thescreen. Following this selection, the subscriber will be given a secondscreen of program selections. In this manner, any menu can have multiplescreens with many program choices. This type of screen pagination on onemenu allows the operations center 202 packager to avoid categorizingprogram selections within that same menu. In an alternative embodiment,the options available to the subscriber may be scrolled on one menuscreen with the text within the menu display blocks changing as thesubscriber scrolls up or scrolls down. Many variations of this HDTVexample can be used with the described system.

k. Backyard System

In an alternative configuration, in areas without cable services wheresubscribers use backyard satellite systems (TV RO) to receive packagedtelevision services, the set top terminal 220 will include theappropriate hardware to allow connection to the satellite 206 receptionequipment through port 656. In this configuration, the menu systemwithin the set top terminal 220 will be programmed directly from theoperations center 202. Additionally, an upstream communication mechanismmust be in place at the subscriber's home (i.e. modem) to communicateinformation to the operations center.

The hardware components that allow the set top terminal 220 to operatein a backyard system typically will not be included within the set topterminal shell itself. Instead, any such components accommodating theset top terminal's interoperability with a backyard program deliverysystem will typically reside outside the subscriber's home. As a result,the set top terminal 220 will operate as described above,notwithstanding any change in program delivery transmission media.

l. Automatic Program Pause Feature

An apparatus and method consistent with the present invention providesfor automatically pausing of a video program in response to detection ofan occurrence of a communications event or related triggering event. Theterm “communications event” includes any communication of informationthrough any wireline or wireless medium, examples of which are providedbelow. The term “triggering event” includes a user's access to acommunications event, examples of which are provided below. During thepausing, the video program is buffered such that a user may replayportions of it and perform other VCR-type functions of the program. Inaddition, the apparatus and method provide an indication of thecommunications event to the user by displaying, for example, text orgraphics on a video display for the video program. For example, basedupon detection of an incoming telephone call, the apparatus pauses thevideo program and displays an indication of the call overlayed on thepaused video program or inset within it. This feature thus permits auser to automatically obtain an indication of a particular event while,at the same time, having the video program buffered such that portionsof it are not missed, which is particularly useful for “live” videoprograms.

FIGS. 24 a-24 d provide examples of indications of variouscommunications events which may be used to pause a video program. Asshown in FIG. 24 a, a video display 1400 displays a video program 1401.Based upon detection of a telephone call, the system displays a message1402, which may include the incoming telephone number as well as anytext or graphics the user has previously associated with that number.For example, as shown, a user may associate a name with a particularnumber and potentially also associate an icon with it such as a “smileyface.” The video display 1400 may be implemented with a television 222or any device for displaying a video program, such as a computer monitoror flat screen display. Also, the indication of the communications eventmay be presented on the same display device as the paused video program,or on an associated display device.

As shown in FIG. 24 b, detection of an incoming e-mail message mayresult in a text message 1403 providing an indication of the incominge-mail message. This indication can include the message itself or otheridentifying information, such as a graphic or an identification of thesender of the message.

As shown in FIG. 24 c, detection of a message from program control mayresult in display of a message 1404. Program control refers to aparticular content provider. For example, program control includes acable television operator, a set top terminal manufacturer, or a cabletelevision network programmer.

As shown in FIG. 24 d, detection of an incoming web page may result indisplay of a web page 1405. Web pages includes pages formatted, forexample, in HyperText Markup Language (HTML) for transmission over theInternet using web browsers. Also, a user's access to the web page mayconstitute a triggering event, resulting in pausing and buffering of thevideo program. Many other types of triggering events are possible,involving a user's access to other types of communications events.Examples of other communications events include, but are not limited to,the following: a page to a pager number; an incoming cell phone call; anincoming facsimile transmission; an indication of a voice mail; or anincoming video call. Likewise, examples of other triggering eventsinclude, but are not limited to, the following: a user's access to apage to a pager number; a user answering an incoming cell phone call; auser accessing or otherwise requesting to view an incoming facsimiletransmission; a user's access to a pending voice mail message; a user'saccess to his or her personal web page; or a user's initiation of avideo call.

This program pause feature provides the user with an indication of aparticular communications event, while buffering the paused videoprogram. The user can thus take a particular action in response to thecommunications event without missing any substantial portion of thevideo program. For example, in response to display of an indication ofan incoming telephone call, the user may choose to answer the telephonecall while the video program is buffered. The system can buffer thevideo program either, for example, in response to the telephone call orin response to an off-hook condition indicating the user has answeredthe call. Likewise, in response to an e-mail message or message fromprogram control, the user may choose to view the message while thepaused video program continues to be buffered. The incoming e-mail andweb pages may be related to user options; for example, a particularstock price may be used to automatically trigger an e-mail or web pagetransmission to the user's display device.

FIGS. 25 and 26 illustrate how use of the buffer for a video programpermits the user to replay portions of the video program and executeother VCR-type functions for it. This feature is particularly useful forreal-time (“live”) video program transmission, where the user typicallywould otherwise lose portions of the transmission when the video programis paused. This feature may be used with any type of video program,whether transmitted, for example, in real-time or prerecorded. Thebuffer receives and stores the video program for subsequent playback.Various techniques are known for converting a video program into adigital signal, potentially compressing it, and storing it onto astorage device for subsequent replay. The buffer may be implemented witha storage device such as a hard disk drive or the RAM controlled by settop terminal 220, as shown in FIG. 4. Alternatively, the buffer can beimplemented with a storage device at cable headend 208 or with any typeof storage device receiving a video program for display on an associateddisplay device.

As shown in FIG. 25, a buffer 1420 receives a video signal from a videoprogram source 1423, which includes any source of a video signal for usein displaying a video program. Examples include broadcast television,and other wireless and cable television transmission, and electronicdevices outputting video signals. The video signal is typicallyprocessed for storage within buffer 1420, such as through conversion toa digital signal, compression, and filtering. Buffer point 1422 inbuffer 1420 illustrates a point of current transmission. In other words,a beginning of the buffer corresponds with a current transmission of avideo program from video program source 1423. The video program istransmitted from the buffer to a video program display 1424.

Upon reading the video signal from buffer 1420, various processing of itmay occur for subsequent display on a television or other displaydevice. For example, the stored video signal is typically converted toan analog signal, amplified, and filtered before transmission to thedisplay device. A transmission point 1425 illustrates a point oftransmission of the video program from buffer 1420 to display 1424.Therefore, when the system transmits the video program from the start ofthe buffer, with transmission point 1425 corresponding to the point ofcurrent transmission 1422, the video program is transmitted inreal-time.

Although transmitted in real-time, the apparatus simultaneously buffersthe incoming video signal for subsequent use in performing various videoprogram control features. Therefore, buffer point 1421 illustrates theamount of the video program stored within buffer With various types ofstorage devices such as hard disk drives along with known compressiontechnology, it is possible to buffer a substantial amount of a videoprogram.

FIG. 26 illustrates use of the buffer for performing various videocontrol functions, particularly after the video program has been paused.As the video program is paused, buffer point 1425 moves along buffer1420 to track the last point of transmission of the video program. Whenthe video program is paused, the user may execute various functions tocontinue to play the video program and play portions that were missed.Therefore, the amount of video buffered between point 1421 and bufferpoint 1425 represents an amount buffered before the video program waspaused. The amount buffered between buffer point 1425 and point ofcurrent transmission 1422 represents the amount of video program missedby the user and buffered while the video program was paused. Uponrequesting to play the video program, buffer point 1425 moves toward thebeginning of buffer 1422 in order to play a buffered portion that wasmissed.

Since the video program has been buffered, the user may perform otherfunctions. In particular, the user may rewind the video program, inwhich case buffer point 1425 moves in rewind direction 1427 to playprevious portions of the video program. The user may fast forward thevideo program, in which case buffer point 1425 moves in fast forwarddirection 1426 toward the point of current transmission 1422 as thebuffered video program is transmitted to display 1424. Accordingly, bytransmitting the video program from various points along the bufferedportion of the video program in buffer 1420, the user may performVCR-type functions of real-time or other video programs. Various otherbuffering methodologies may also be used with the program pause feature.

FIG. 27 is a flow chart of a program caller ID method 1430 forprogramming a caller ID function. As also explained above, caller IDuses known technology for displaying on a telephone or associated devicea caller's phone number for an incoming phone call. The caller IDfunction permits pausing of a video program to display an indication ofan incoming telephone call. Program caller ID method 1430 permits a userto associate text messages and potentially graphical information withtelephone numbers. Therefore, when a caller ID function displays thetelephone number of an incoming telephone call, the system may alsoretrieve and display a name or other information associated with thatnumber. Program caller ID method 1430 may be implemented in software orfirmware, including modules, for execution by microprocessor 602 in settop terminal 220; alternatively, it may be implemented with otherprocessor-controlled devices for use in displaying a video program on anassociated display device. As used herein, the term “module” includes asingle module, multiple modules and one or more modules each having oneor more sub-modules.

In program caller ID method 1430, a user requests to program caller ID(step 1431), which may occur through the use of an input device such asa keyboard or remote control 900. The system receives a phone numberfrom the user (step 1432), which the user may enter through use ofremote control 900 or other input device. The user then enters a textmessage through use of remote control 900 or other input device (step1433). In addition, the system may permit a user to select a graphic orother icon to also associate with the phone number (step 1434), anexample of which is shown in FIG. 24 a. The system can prestore variousgraphics or icons and display them to the user for selection throughremote control 900 or other input device. In response to the user'srequest to save the information, the system associates the phone numberwith the text message and graphic and stores it for later retrieval(step 1435). The information may be stored in the RAM accessed bymicroprocessor 602. If the user requests to program more telephonenumbers (step 1436), the system repeats steps 1432-1435. Certain numberscan be programmed to automatically pause the video program while otherswill need an additional step for pausing the video program.

FIG. 28 is a flow chart of an event monitoring method 1440 formonitoring communications events and pausing a video program in responseto detection of an occurrence of a communications event or triggeringevent. Event monitoring method 1440 may be implemented in software orfirmware, including modules, for execution by microprocessor 602 in settop terminal 220; alternatively, it may be implemented with otherprocessor-controlled devices for use in displaying a video program on anassociated display device.

In event monitoring method 1440, the system monitors an on-lineconnection (step 1441). This typically occurs at set top terminal 220,which may include a connection with a phone line through telephone jack658 in addition to a connection to a source of a cable televisionsignal, a satellite television signal, or other sources of videoprograms such as those described above or in the related applicationsidentified above. The system continually monitors the connection for anoccurrence of a communications event (step 1442). Upon detecting theoccurrence of a communications event, the system optionallyautomatically pauses the video program in response to the communicationsevent and continues to transmit it to the buffer for storage (step1443). Step 1443 is optional in that a user may choose to have the videoprogram paused in response to a triggering event, explained below,rather than in response to a communications event.

The system also determines if stored information exists corresponding tothe communications event (step 1444). For example, the user may havestored text information corresponding to particular phone numbers usingprogram caller ID method 1430. If information corresponding to thecommunications event exists, the system retrieves the stored information(step 1445).

The system then displays an indication of the communications event (step1446). This indication is typically displayed on the same television ordisplay device which displays the video program. It may be displayed asan overlayed image on the displayed or paused video program or an insetimage within the displayed or paused video program, as shown in FIGS. 24a-24 d. If the communications event was a telephone call (step 1447),the system displays the number of the incoming telephone call or anotherindication of the call along with any retrieved information, if present(step 1452). The system may, for example, detect occurrence of atelephone call through monitoring a phone line through telephone jack658 and detecting a signal corresponding to a phone call.

If the event was an incoming e-mail message (step 1448), the systemdisplays an indication of the e-mail message such as the name of thesender (step 1453). The system may detect an e-mail message through useof e-mail communications software detecting an incoming e-mail on aphone line through telephone jack 658. Software packages for sending andreceiving e-mail messages are known in the art.

If the communications event was an incoming web page (step 1449), thesystem displays an indication of the web page such as the page itself(step 1454). The system may detect an incoming web page, for example,through use of a web browser in set top terminal 220 detecting receiptof a web page on a phone line through telephone jack 658. Web browsersare known in art and include, for example, the MICROSOFT INTERNETEXPLORER™ program and the NETSCAPE NAVIGATOR™ program.

If the communications event was an incoming message (step 1450), thesystem displays an indication of the message such as an identificationof the sender of the message (step 1455). The system may detect anincoming message in the same manner as detection of an e-mail message.

If another type of communications event occurred (step 1451), such asreceipt of an incoming video call, the system may display an indicationof that type of communications event (step 1456). For any of thecommunications events, the system may alternatively display an icon,such as a telephone icon for a phone call or an envelope icon for ane-mail message, or display textual or other information providing anindication of the communications event. This display may be in the formof an overlay menu or a hidden menu. Alternatively, techniques such aspicture-in-picture, split screen, or side-by-side screen displays may beused. After displaying an indication of the communications event, thesystem waits for user input (step 1457).

The system receives a particular user input (step 1458) and determinesif it is a triggering event, which is a user's access to acommunications event. For example, triggering events include a useranswering a phone call, opening or selecting a displayed indication ofan e-mail or web page, or one of the other examples provided above.Therefore, instead of having the video program automatically paused inresponse to the communications event, a user can continue to view thevideo program upon viewing an indication of a communications event andhave the video program paused if the user decides to access thecommunications event. The indications of the communications events maybe displayed overlayed on the video program, or inset within it, forthat purpose. In addition, if no triggering event occurs within aparticular time, the system can be programmed to automatically removethe indication of the communications event. Therefore, if the user doesnot access the communications event within a particular time frame, thesystem does not continue to display the indication of a communicationsevent over the video program. The system may also be programmed forother types of options and examples include, but are not limited to, thefollowing actions by the system based upon detection of a communicationsevent or a triggering event: muting an audio portion of a video program,continue displaying a video portion of the video program, and bufferingboth the video and audio portions for future replay; or pausing a videoportion of a video program, continue presenting an audio portion of thevideo program, and buffering both the video and audio portions forfuture replay.

The system determines if the user input is a triggering event (step1459). For example, it may detect a phone off-hook condition, a user'sinitiation of a video call or a user's selection of an e-mail or webpage through, for example, use of remote control 900. Alternatively, thetelevision system may be equipped to allow the user to answer the phoneusing the remote control 900. If the user input is a triggering event,the system determines if the program is already paused (step 1460); ifnot, the system automatically pauses the program in response to thetriggering event and transmits the video program to the buffer forstorage (step 1461). As explained above, the pausing may include pausingboth the video and audio portions of a video program, pausing only theaudio portion, or pausing only the video portion. Typically, both theaudio and video portions are buffered during the pausing.

If the user input was not a triggering event, the system determines ifit was a user command (step 1464); if so, the system executes the usercommand (1465), as described in video program control method 1470 shownin FIG. 29. As indicated, the system may also be programmed to removethe indication of the communications event if it does not detect atriggering event within a particular time frame. Therefore, the systemmay determine if a particular time has elapsed without receiving atriggering event (step 1462) and, if so, it removes the indication ofthe corresponding communications event (step 1463). For example, anyoverlayed items or text may be removed.

FIG. 29 illustrates video program control method 1470, which may beexecuted simultaneously with event monitoring method 1440. Video programcontrol method 1470 permits VCR-type functions based upon use of thebuffer as explained with respect to FIGS. 25 and 26. In addition, videoprogram control method 1470 permits the user to enter a command in step1457 in the flow chart in FIG. 28 in order to begin playing a videoprogram after it has been paused in response to detection of anoccurrence of a communications event. The user may also enter thesecommands at various other times during the viewing of a video program.Video program control method 1470 may be implemented in software orfirmware, including modules, for execution by microprocessor 602 in settop terminal 220; alternatively, it may be implemented with otherprocessor-controlled devices for use in displaying a video program on anassociated display device.

In video program control method 1470, the system receives a user command(step 1471). The user may enter commands through use of remote control900 or other input device. If the user entered a play command (step1472), the system receives and displays a video program andsimultaneously buffers the program; the system also removes anindication of a communications event from the display device, if present(step 1480). Therefore, if a program had been paused in response todetection of an occurrence of a communications event in event monitoringmethod 1440, the system removes the displayed indication and beginsplaying the video program from buffer point 1425 such that the userwould not have missed any substantial portion of the video program.

If the user entered a pause command (step 1473), the system determinesthat the video program is already paused (step 1481). If the program ispaused, the system begins playing the program again from the buffer atbuffer point 1425 (step 1482). If the program was not paused, the systempauses the video program and continues to transmit it to the buffer forstorage (step 1483). Therefore, the pause function operates to pause theprogram and, upon selection of pause again, begin playing the videoprogram at the point where it was paused.

If the user selected a rewind command (step 1474), the system transmitsthe video program in rewind direction 1427 from the buffer (step 1484).The system also determines during the rewind if it has reached the endof the buffer at point 1421 (step 1485). Once the system reaches the endof the buffer, it waits for another user command as it cannot furtherrewind the video program. If the user entered a fast forward command(step 1475), the system determines if the program is transmitted at thecurrent point of transmission 1422 (step 1486). If the program isalready transmitted at its current point of transmission, the systemcannot fast forward beyond that point and waits for another usercommand. Otherwise, the system 8 transmits the program in fast forwarddirection 1426 from the buffer (step 1487), and continues fastforwarding the video program until it reaches the current point oftransmission as determined in step 1486.

If the user entered a jump command (step 1476), the system determines ifthe program is transmitted at current point of transmission 1422 (step1488); if not, it jumps to the start of the buffer such that bufferpoint 1425 corresponds with the point of current transmission 1422 andplays the program from that point (step 1489). If the user entered aslow motion command (step 1477), the system transmits the program fromthe buffer at a reduced rate, which may be predetermined or entered bythe user (step 1490).

If the user entered a frame forward command (step 1478), the systemdetermines if the program is paused (step 1491). In this example, thesystem only executes the frame forward command after the program hasfirst been paused. If the program is paused, the system transmits theprogram frame-by-frame in a forward direction from the buffer (step1492). The forward direction corresponds with fast forward direction1426. If the user entered a frame back command (step 1479), the systemagain determines if the program is paused (step 1493), since in thisexample the system only performs the frame back command if the programis first paused. If the program is paused, the system transmits thevideo program frame-by-frame in a reverse direction from the buffer(step 1494). The reverse direction corresponds with rewind direction1427.

m. Video Call Feature

i. Basic Video Call Functionality

A preferred form of the present invention provides video callingcapability in the set top terminal 220. To support video calling, theset top terminal 220 is augmented with additional features, as shown inFIG. 30. The additional features can be integrated into an enhanced settop terminal 220 or provided as one or more upgrades to a more basic settop terminal 220. In FIG. 30, a camera 2000 and an input device 704 areincluded in the set top terminal 220. The camera 2000 is preferably asmall video camera located and oriented on the set top terminal 220 sothat it is typically directed at the face, torso, or entire body of oneviewing the display 602. The direction of pointing is preferablymanually adjustable by the user. Alternatively or additionally, thecamera 2000 can be pointed, focused and otherwise controlledelectronically.

The input device 704 performs the function of accepting user input inorder to establish and manage a video call, e.g., entering partyidentifiers, hanging up, etc. The input device 704 may be a physicaljoined with the set top terminal 220 or apart from the set top terminal220. Exemplary forms of the input device 704 include a telephone stylenumber key pad; cursor/pointer movement device, such as a track ball,joystick or touch pad; click-type buttons; and a wired or wirelessinterface to a separate keyboard. Alternatively or additionally, thedisplay 222 and the input device 704 can be combined in the form of atouchscreen. The input device 704 may be a combinations of severaldifferent forms, including the illustrative ones just mentioned. In apreferred embodiment, the input device 704 is the remote control 900.

Video calling also requires an upstream (or reverse path ortransmission) communication capability of sufficient bandwidth. Theupstream communication capability for video calling is in addition tothe downstream communication capability by which broadcast programmingis received. The communications network that provides this bidirectionalbandwidth is described in detail further below.

To support video calling, an instruction memory of the set top terminal220 preferably contains programs for call establishment and management.The programs provide menus and a graphical user interface for callinitiation, adding a party to a conference call, accepting an incomingcall, terminating a call, and setting up call characteristics as well asdisplay and other output characteristics.

FIG. 30 is a block diagram of video call transmission and receptionfunctions of the set top terminal 220. In regards to transmission, avideo signal from the camera 2000 is subjected to source encoding (i.e.,conversion to spectrally efficient or compressed digital form) by avideo source encoder 705, and an audio signal from thespeaker/microphone 2002 is subjected to source encoding by an audiosource encoder 710. The source encoded video and audio signals aresynchronized and multiplexed together by a synchronizer multiplexer 715.The video source encoder 705, audio source encoder 710 and thesynchronizer multiplexer 715 together can function to perform standardaudio/visual encoding algorithms such as MPEG (motion picture expertgroup) or ITU standard H.261 or H.263, which are well known in the art.Other media signals, signals containing signaling information or datasignals from a data source 712 can also be multiplexed with the audioand video signals, as described in greater detail below. The multiplexedaudio/visual signal output from the synchronizer multiplexer 715 isoptionally encrypted by an encryptor 720 and channel encoded (e.g.,forward error correction encoding and/or interleaving) by a channelencoder 725 before being transmitted by a transmitter 730 upstream intoa video conferencing connection network. Those skilled in the art willappreciate that the transmission functions illustrated in FIG. 30 can beimplemented in an order different from that illustrated.

In regards to reception, an incoming (i.e., downstream) videoconferencing signal is received by a receiver 750, decoded by a channeldecoder 755, decrypted by a decryptor 760, and demultiplexed with properrelative timing among video, audio and other data components by ademultiplexer synchronizer 765. Video signals are decompressed by avideo source decoder 770 and output for display on a display device 602,which is typically the television 222. Audio signals are decompressed byan audio source decoder 775 and output for playing on thespeaker/microphone 2002, the speaker portion of which may be thespeaker(s) of the television 222 Data files, such as electronic books,are stored in one or more files 777. Again, the order of processing canbe different from that illustrated.

The other signals that can be multiplexed with the audio and videoconference call signals include, for example, data files, electronicbooks, or HTML (hyper-text markup language) based content according tothe ATVEF (advanced television enhancement forum) specification. TheHTML content may be displayed, may be stored in the set top terminal 220for later use, or may be passed to other devices. Broadcast datatriggers, announcements, and content resources can be sent in the VBI ofthe video call signal or in an auxiliary data channel delivered with thevideo call signal. Announcements can be used to indicate thatinteractive programming content is available for a given video call orsegment of a video call. Content resources contain the actual content orprogramming to be run on the receiving device. Such content includes Webpages, scripts and images. The broadcast data trigger is used tosynchronize the initiation of the interactive programming content to anongoing video conference call.

ii. Network for Video Calling

FIG. 31 illustrates a video conferencing network 1000 and variousconfigurations for connecting set top terminals 220 (or other videoconferencing end equipment 1005) to the network 1000. The network 1000provides full duplex interconnectivity between set top terminals 220involved in a given video conference call. The network 1000 can supportmany simultaneous calls. One typical configuration for connecting a settop terminal 220 to the network 1000 is via a local switch 262, such asshown in the lower central area of FIG. 7, where a set top terminal 220a is connected to a local switch 262 a, which in turn is connected tothe network 1000. A variation of this configuration is a directconnection between the network 1000 and a set top terminal 220, such asthe set top terminals 220 b-220 d.

FIG. 31 also illustrates a mini-network 1010. The mini-network 1010 canprovide full duplex interconnectivity between set top terminals 220 in alimited area (e.g., within a home, building, or campus) so as to supportvideo calls without involvement of the network 1000. For example, in thecase of a video call between two set top terminals 220 e and 220 fwithin the mini-network 1010, the connection between the set topterminals 220 e and 220 f can be a direct connection or it can be aconnection through the local switch 262 b. FIGS. 11 and 12 furtherillustrate these two connection options, respectively.

In FIG. 32, the set top terminals 220 e and 220 f, as well as a thirdset top terminal 220 g, communicate with each other without anintermediary. The communication paths between the set top terminals 220e-220 g are preferably wireless links, and in one embodiment thewireless links are RF links that utilize an RF transceiver in each ofthe set top terminals 220 e-220 g. Wireless infrared links are alsopossible. In alternate embodiments, the communication paths can beprovided by wired networks, such as an existing data or computer network(e.g., LAN), existing television cabling, or existing home/buildingpower wiring (as disclosed, for example, in U.S. Pat. No. 5,319,634,which is hereby incorporated by reference). In any case, the channellinking the set top terminals 220 e-220 g is multiplexed to accommodatesix unidirectional links that connect the three set top terminals 220e-220 g in a fully meshed network. Although one skilled in the art willreadily appreciate that many multiplexing schemes are possible,including TDMA (time division multiple access) and FDMA (frequencydivision multiple access), the multiplexing scheme preferably utilizesCDMA (code division multiple access), also termed SSMA (spread spectrummultiple access), techniques. Advantages of CDMA in this instanceinclude security of transmissions and the fact that FCC (FederalCommunication Commission) regulations might not apply to thesetransmissions.

In one embodiment, an asynchronous direct sequence CDMA system with acommon spreading code is utilized. Similar CDMA systems are well knownand discussed, for example, in U.S. Pat. No. 5,103,459 and U.S. Pat. No.5,546,381, both of which are hereby incorporated by reference. In such asystem, a transceiver of each of the set top terminals 220 e-220 gincludes an omnidirectional or essentially omnidirectional antenna, sothat each set top terminals 220 e-220 g can receive the transmission ofthe other two set top terminals. Each of the set top terminals 220 e-220g encodes its transmissions using the same m-sequence as a directsequence spreading code but at different phases. For example, the settop terminals 220 e may transmit at a relative code phase of zero; theset top terminals 220 f may transmit at a relative code phase of −3.2chips; and the set top terminals 220 g may transmit at a relative codephase of +38.0 chips. Actually, each of the set top terminals 220 e-220g can transmit at a random code phase while the receiver circuitryincludes a search/selection algorithm as well as some contentionprotocol to resolve code phase collisions. The transceiver of each ofthe set top terminals 220 e-220 g in this embodiment is a CDMA receiverthat suppresses self-reception interference, despreads the receivedsignals at the various incoming codes phases, tracks those phases, andpossibly mitigates multipath and/or interuser interference.

Because the mini-network 1010 of FIG. 32 is fully meshed, it can operateunder distributed control. Preferably, a receiver-oriented controlprotocol is utilized. Each of the set top terminals 220 participating ina video conference call broadcasts its audio/video signal(s), and anyset top terminals 220 that receives the signal(s) performs the necessaryprocessing to output the audio and video components in combination withthose of other received signal(s). Preferably, the video portions of theincoming signals are scaled and displayed together in some arrangementon the display 602, while the audio portions of the incoming signals aresummed, synchronized to the video, if necessary, so that a summed,synchronized audio signal is sounded from the speaker/microphone 2002.

In FIG. 33, the local switch 262 c is used as a central node in themini-network 1010, and connections 1200-1210 link the local switch 262 cto the set top terminals 220 e-220 g, respectively. The connections1200-1210 can be hardwired or wireless. Although FIG. 33 depicts theconnections 1200-1210 in a star arrangement, other arrangements, such asa ring, for example, are possible. In cases where the connections1200-1210 share a common medium (e.g., a hardwired ring, or free spacein the case of wireless connections), then a multiplexing scheme isnecessary. Again, many well known multiplexing schemes are possible,including TDMA and FDMA, but the multiplexing scheme preferably utilizesCDMA techniques for wireless connections. In this case, the centralizednode (i.e., the local switch 262 c) allows a synchronous, orthogonalCDMA system to be utilized.

Specifically, synchronous orthogonal CDMA spreading codes, such asWalsh-Hadamard codes, are employed on the uplinks from each of the settop terminals 220 e-220 g to the library unit 262 c; meanwhile, abroadcast downlink is transmitted from the local switch 262 c andreceived by each of the set top terminals 220 e-220 g. In oneembodiment, the broadcast downlink is spread using one of theWalsh-Hadamard codes unused by the uplinks and includes control data foruplink timing and transmission power control feedback as well as calldata comprising combined audio/video signal(s) from each viewerparticipating in the conference call.

In one embodiment, the local switch 262 c provides centralized controlof communications involved in a video conference call. Such centralizedcontrol may include call set-up, audio summing, and video combining.Alternatively, the local switch 262 c can perform only switching andconnectivity functions, while each of the set top terminals 220 e-220 gperforms the control functions, just like in the case of a directlyconnected mini-network where there is no local switch 262.

The access control of the local switch 262 c can be modified toaccommodate multiple viewer connections during a conference call. Thelocal switch 262 c may communicate with several set top terminals 220e-220 g during a conference call. This can be accomplished by operatingthe local switch 262 c in a “clear” mode during a conference call. Clearmode transmissions from the local switch 262 c may be unencrypted or,preferably, clear mode transmissions from the local switch 262 c utilizea common key to which all of the set top terminals 220 e-220 g haveaccess.

The mini-network just described is capable of supporting calls betweenset top terminals 220 in a relatively small geographical area, withoutinvolvement of the network 1000. For calls of greater range, the network1000 is necessary. National or worldwide connectivity is possible usingthe network 1000, which may take various forms, as described below,including hybrids of the following: cable television network, cellulartelephony network, PCS network, the PSTN and the Internet.

In one embodiment, the network 1000 utilizes a cable televisiontransmission network, as described in section A above. Generally, acable television transmission network comprises headends, each of whichserves a number of subscribers. The connection between a headend and asubscriber may be metallic coaxial cable, optical fiber, or a hybrid,e.g., hybrid fiber-coax (HFC) systems. The most common cable networkstoday are BFC networks, but 100% fiber optic networks, i.e., fiber tothe curb (FTTC), will be more prevalent in the future.

To support conference calling, the cable television network and the homeinterface to the cable network must support two-way communications. Thiscan be accomplished by having separate physical fibers/cables ordirectional multiplexing on the same fibers/cables or some combinationof both. For example, the frequency range between 5 MHZ and 42 MHZ isallocated for upstream (also called “uplink”) transmissions (i.e., froma subscriber to a headend). In a typical HFC layout, there are separateoptical fibers for upstream and downstream transmissions between aheadend and each of several neighborhood fiber nodes, where signals areconverted between optical and electrical forms. However, upstream anddownstream transmissions are multiplexed together onto the same coaxialcable that links a fiber node to subscriber sites (e.g., homes,offices). Bidirectional amplifiers employing diplexers are typicallyutilized in the coaxial portion between a fiber node and subscribersites. Further details of a bidirectional cable television system arecontained in U.S. application Ser. No. 09/124,043, filed Jul. 29, 1998,entitled METHOD AND APPARATUS FOR USING PROGRAMS WATCHED DATA, which ishereby incorporated by reference. An alternative use of the cable plantis via cable modem pairs between a viewer or library unit and a headend.

Further upstream from the cable headends are one or more operationscenters. The general downstream functionality of an operations center iscollecting programs and/or data, packaging the collected programs and/ordata, and transmitting the packaged programs and/or data to headends.The link between an operations center and a headend may involve fixedterrestrial medium (e.g., cable/fiber), terrestrial microwave,satellite, or some combination of channels, although satellite channelsare the most common presently. The link between a headend and anoperations center may be bidirectional to support duplex calling betweenelectronic viewers. Operations centers may be linked together to providesupport over an even larger geographical area.

In direct broadcast satellite (DBS) systems, the headend is absent orbypassed, and the operations center communicates directly with thesubscriber via satellite. To the extent that a DBS satellite link isbidirectional with sufficient upstream bandwidth, a DBS system may alsobe utilized to support calling between electronic viewers. As analternative to the DBS system, a separate, dedicated or proprietarysystem of satellites may be utilized with the present invention toprovide a satellite backbone for the network 1000. Alternatively,diverse communication channels, such as telephony or the Internet, canbe used to provide upstream communications in conjunction with adownstream satellite transmission. For example, a downstream satellitebroadcast of audio and video from a teacher or professor along withupstream audio only transmissions from students via a diversecommunication channel is well suited to distance learning applicationsusing the conference calling capabilities of the present invention.

The extent to which bidirectional communication capability is present inthe cable television system determines the support for calling betweenset top terminals 220. In one embodiment, a central node within thenetwork 1000 performs signal processing and coordination to establishand manage a multiparty video conference call, as described in greaterdetail below. A video conferencing central node may be combined orcollocated with other equipment in the cable television network. Forexample, a central node may be associated with an operations center toprovide national or regional coverage. A smaller scope of coverage maybe supported by a central node associated with a headend. An evensmaller scope of coverage may be supported by a central node associatedwith a fiber node. Continuing one step further, the mini-network, asdescribed above, results when a central node is associated with a localswitch.

The cellular telephony system is a bidirectional communication networkthat can be utilized for calls between set top terminals 220 havingcellular transceivers. Analog and digital cellular telephony systems arewell known in the art and easily support two-party conference callswithout video. Digital cellular systems are preferred for use with thepresent invention, because they offer greater bandwidth, which isnecessary for transmission of video. A central node for videoconferencing in a cellular network may be a cellular basestation (i.e.,at the center of a cell) or mobile switching station, which links manybasestations together.

A wireless PCS (personal communication system) is another bidirectionalcommunication network that is well known in the art and can be utilizedfor calls between set top terminals 220 having PCS transceivers. The PCSmay be, for example, a PCN.

The PSTN (public switched telephone network) can be utilized with thepresent invention to communicate video conferencing calls among set topterminals 220 having a PSTN interface. The PSTN reaches worldwide andencompasses landlines (both metallic and fiber optic), terrestrialmicrowave links, and satellite links, as well as a large number ofswitching centers and exchanges. The PSTN is well known in the art, andin particular, multiparty conference calling in the PSTN is well known.Furthermore, schemes for video transmission via the PSTN are known inthe art. For example, U.S. Pat. No. 5,563,882 (the '882 patent), whichis hereby incorporated by reference, discloses a video conferencingsystem that utilizes ISDN (integrated services digital network) and theH.320 video telephone protocol. The '882 patent discloses a “multipointcontrol unit (MCU),” which is an example of a video conferencing centralnode, as used herein.

Hybrids of cable television networks, cellular telephony networks, PCNs,the PSTN, and other networks, such as the Internet, are possible. By wayof example, some cable television networks presently provideinterconnection to the PSTN and the Internet, so that a television cablecan be the single communications conduit for a home or office. Furtherintegration and interconnections to PCNs and/or cellular networks istechnically straightforward and likely in the future.

iii. Video Calling Processes and Methods

The processes and methods involved in video calling include callestablishment, signal processing and possibly central combining andauxiliary functions such as call storage and retrieval. These processesand methods are described in detail immediately below.

A video conferencing call can be established in a variety of manners.One or more channels for combined audio, video, and possibly other datacan be set up at the initialization of the call. Alternatively, videoand possibly other data communication can be added to an existing callthat initially carries less media or fewer media channels, such as anaudio-only call, for example.

In any case, channels for the various media are typically requested byone of the call participants. Requests are communicated to a videoconferencing central node via a signaling network that may be inband orout-of-band with respect to the media content of the call. In a circuitswitched or connection oriented network, a request is processed by oneor more video conferencing central node(s) so as to route the requestedmedia channels, reserve adequate switch ports and/or configure variousswitches between the call participants as necessary to support therequested media. For example, a request for video communicationmidstream in an audio-only call that is already established would promptthe video conferencing central node to configure its video switch toestablish one or more connections of sufficient bandwidth to accommodateduplex video transmissions and possibly perform other processing tomark, join, or synchronize the video transmissions to the pre-existingaudio communications. Further examples of requests schemes in a videoconferencing system are disclosed in the '882 patent and U.S. Pat. No.5,896,128 (the '128 patent), which is hereby incorporated by reference.In a packet switched or connectionless network, requests as justdescribed may not be necessary. In an asynchronous transfer mode (ATM)network, which has some qualitites of both circuit switching and packetswitching, use of requests would be appropriately modified in accordancewith well known understanding in the art.

It is also possible to add a party to an ongoing video conferencingcall. For example, a point-to-point two-party call can be converted toabridged three-party call. A technique for doing so without disruptionto the call is disclosed in the '882 patent.

A particular participant may select which, if any, other participants ofa conference call will be able to receive all or some of its signals.This selection may be made during initial call establishment or “on thefly.” For example, if a party A to a three-way conference call amongparties A-C wishes to disclose to party B something secretly from partyC, party A may temporarily turn off the ability of party C to hear orview the signals of party A.

A set top terminal 220 performs signal processing associated with thetransmission and reception of call content. In regards to transmission,the audio signal sensed by the speaker/microphone 2002 is converted todigital form and compressed. For voice or speech audio, the followingfamilies of algorithms are particularly suitable: pulse code modulation(PCM), delta modulation (DM) and linear predictive coding (LPC). Each ofthe above families of algorithms includes variations, such asdifferential and adaptive variations. Similarly, the video signal sensedby the camera 2000 is converted to digital form and compressed. Thefundamental techniques for image compression include vectorquantization, discrete cosine transforms, and run-length encoding.Combinations of these techniques are also possible. For video sequencesof images, interframe encoding based on motion prediction can be appliedto provide further compression gains. These techniques as well as othersare utilized in standard video compression algorithms, includinglow-rate MPEG and ITU standard H.261 and H.263 for video conferencing,which are well known in the art. Any compression algorithm that producesacceptably low bit rates for video and/or audio transmission through thenetwork and can be implemented in real time with acceptably small delayis suitable for use with the present invention. Encoding of video andaudio may be distinct or interrelated. By way of example, MPEG is acombined standard for both video and audio. These and other features aredisclosed in additional detail in the '128 patent.

In regards to reception, a set top terminal 220 executes a decompressionalgorithm corresponding to the compression algorithm. In addition, theset top terminal 220 may perform additional processing of the receivedsignals. For example, the set top terminal 220 can deselect some or allother conference call participants for output on that particular set topterminal 220, scale video images, overlap video images, and otherwisecustomize the display and output characteristics. Furthermore, the settop terminal 220 may be programmed to automatically select the dominantspeaker on the basis of the audio components of the conference call andenlarge the size and/or display resolution of the corresponding videooutput. These and other reception signal processing features aredisclosed in the '128 patent cited above as well as U.S. Pat. No.5,801,756, which is hereby incorporated by reference.

Optionally, the video conferencing system can support more sophisticatedremote participant controls of video and camera functions. For example,the camera 2000 may be electronically controllable (e.g., electronicallysteerable, focusing, zoom, pan, etc.) locally or remotely, and one ormore other participating viewers 266 can command these electronicallycontrollable aspects of the camera 2000 to customize and dynamicallyalter the characteristics of the video image sensed by the camera 2000.Alternatively, the same “camera” video effects may be achieved usingsignal processing techniques. Camera commands and related videomanipulation commands can be communicated from the remote (controlling)viewer to the subject (controlled) viewer by a low rate signalingchannel.

Other conferencing display controls are possible, including, forexample: (1) round robin display in a predetermined sequence; (2) visualtoken passing, wherein everybody can see the participant who holds thetoken; (3) dominant voice activation, wherein whoever has the loudestaudio signal is displayed; and (4) “Hollywood Squares” style display ofall participants jointly in an arrangement such as a checkerboard.

Additional output manipulations are possible for non-video media.Examples of non-video media (besides audio) include electronic books,data files, documents, spreadsheets, graphics, programs, text streams,web pages, and interactive whiteboards. Each of the above can becontained within a window on the display 602 and sized, positioned andlayered to suit the user's preferences. Alternately, each of the abovecan be provided as a picture-in-picture, as described in the above-citedapplication Ser. No. 09/335,268. According to one process of the presentinvention, anew object for display, when it is received at a set topterminal 220, is initially displayed as a small icon. When the userprovides input to open the icon (e.g., by clicking it), the icontransforms into a window of default size and position. The user can thenadjust the display characteristics of the window. In the case of aninteractive whiteboard, each participant in the conference call may viewand potentially edit the contents of the whiteboard, which is preferablya window on which simple drawings, graphics, and text may be entered.Each call participant sees the same version of the whiteboard, which isglobally updated periodically or as necessary.

A receiving set top terminal 220 with sufficient memory can record acall in its entirety or selected components of a call, including one'sown audio, video, or other components. The ability to store and laterretrieve calls or call components is useful for record keeping,recollection or message delivery. The record function can be programmedto operate without a human user present at the receiving set topterminal 220. In this case, the record function provides the set topterminal 220 with the capability of an answering machine or voice mailsystem with video and/or other media embodiments. By way of illustrationof this capability, an unattended set top terminal 220 may receive avideo call from a calling party. The unattended set top terminal 220answers the call automatically and transmits an audio/video greeting tothe calling party. In response to the greeting, the calling partytransmits an audio/video message to the unattended set top terminal 220,which records the message.

A receiving set top terminal 220 can also convert an audio message totext in accordance with algorithms (e.g., voice recognition) that arewell known in the art. The resulting text file can be displayed on thedisplay 602 of the set top terminal 220 or stored in memory, within theset top terminal 220. This feature is useful to produce a transcript ofa call or to “listen” to a call or message silently. The same speech totext conversion capability can be utilized with outgoing calls ormessages as well. By way of example, a user may choose to transmit heraudio signal as a text stream in place of or in addition to her audiosignal. The set top terminal 220 can also be programmed to convert textto speech in accordance with well known algorithms. Such a feature isuseful for users who have difficulty seeing or reading. Additionaldetails of conversion between speech and text are provided in theabove-cited application Ser. No. 09/344,449.

Some or all of the set top terminal 220 functionality, as described inthe preceding section can be performed by a video conferencing centralnode instead (or additionally). For example, the record and storagefunction can be easily, and in cases advantageously, located in acentral storage node rather than distributed among set top terminals220. As further examples, a central node can perform speech-textconversion and can store and manage an interactive whiteboard. Centralunit recording, storage and management are desirable when the content ofthe video conference call concerns a lecture or presentation.

In a preferred embodiment, a video conferencing central node performscentral combining for a conference call. Central combining simplifiesthe communication among the viewers 266 participating in a conferencecall by establishing full duplex connections having fixed or boundedbandwidth, one between each participating set top terminal 220 and thecentral node. The central node manages all aspects of the call and isultimately responsible for the selection of information received by eachparticipating viewer on its single channel. The central node receivesall uplink transmissions of video, audio and possibly other media. Thecentral node then makes various combinations of the uplink data, onecombination being transmitted to each participating set top terminal220. Each participating set top terminal 220 can customize its downlinkcombination and output display, as described above by communicatingconfigurations commands to the central node, which effects the requestedconfiguration. Further details of central combining for videoconferencing is disclosed in the '128 patent already cited and U.S. Pat.No. 5,657,096, which is hereby incorporated by reference.

FIG. 34 illustrates central combining for a conference call among thethree set top terminals 220 a-220 c. A node 1025 is the central node forthis call. Nodes 1030 and 1035 are utilized for connection of the settop terminal 220 a. In this example, the network 1000 initiallydetermines that the node 1025 would act as the central node. Uponestablishment of the conference call, signaling within the network 1000occurs to set up the node 1025 as the central node and to configureswitches at the nodes 1030 and 1035 so as to make the connections asshown, in the case of circuit switching. In the case of packetswitching, the illustrated routes may be ones or the most likely ones ofmany possible routes for given packets. Signals such as video, audio,and/or other media generated or originating at the set top terminal 220a are transmitted to the central node 1025. Likewise, each of the settop terminal 220 b and 220 c transmit signals to the central node 1025.In one embodiment, each of the set top terminal 220 a-220 c alsotransmits via signaling connections configuration information pertainingto its display setup and other functions. Based on this configurationinformation, the central node 1025 performs combining of data from someor all of the three signals to create three customized returnsignals—one for each of the set top terminal 220 a-220 c—and transmitsthe return signals along the paths shown. One skilled in the art willappreciate that transmissions to/from a given set top terminal need notshare the same path physically or logically.

In one embodiment, the central node 1025 performs audio combining.Typically, the audio uplink components from every other participatingset top terminal 220 are summed to create a sum or combined audiosignal, which is then transmitted to a participating set top terminal220 as part or all of its return transmission. Audio summation combininghas the effect of allowing every call participant to hear all otherparticipants, as occurs in a face to face conference. Optionally, a settop terminal's own uplink audio signal can be added to the sum downlinkaudio it receives, thus providing a sidetone, which is useful if theviewer wears headphones. The summation can be a weighted sum and theweighting can be altered dynamically. For example, relative audioweights, and thus amplification, can be in proportion to the size ofthat speaker's corresponding video image on a particular viewer screen.As another example, the relative audio weight of the dominant speaker atany time may be increased. The time relationship between the componentaudio signals and their corresponding video signals is maintained andsynchronized as necessary. Those skilled in the art will appreciatethese and many other variations and features from well known techniquesof audio conferencing.

In an embodiment of the present invention, the central node 1025performs video processing to combine various video components of a videoconferencing call. In the simplest case, the central node 1025 switchesvideo signals from one or more uplinks to a given downlink withoutprocessing the content of the video signals. In this case, each set topterminal 220 performs any video content processing. In a more activerole, the central node 1025 performs substantive processing of the videosignals to create a composite video signal for each participating settop terminal 220. In this more active role, the central node 1025 canselect from the available uplink video images (still or moving) as wellas other media, position and scale the images. Downward scaling(shrinking) of images may result in a reduction of resolution comparedto the corresponding video signal. Upward scaling (enlargement ormagnification) of images may produce a coarser image whose resolutioncan be enhanced using well known techniques, such as, for example, imageinterpolation and edge enhancement. The composite image for eachparticipating set top terminal 220 is then encoded for transmission.Standard digital encoding formats for moving video are preferred, suchas, for example, an MPEG, H.261 or H.263 format.

FIG. 35 is a block diagram of the video conferencing central node 1025.The central node 1025 contains circuitry to perform the functions justdescribed, including a video combiner 1410, audio summation combiner1415, and a switch 1420. The central node 1025 also contains asynchronizer 1425 to adjust relative timing between audio and videosignals as necessary and a memory 1430 in which signals can be recordedfor future retrieval and playback. A signaling module 1435 transmits andreceives signaling information to/from viewers and other nodes. Finally,a controller 1440 controls the operation of the other circuitry. Thoseskilled in the art will recognize that other arrangements than the oneillustrated in FIG. 11 are possible and that another node or centralnode may contain less than all of the illustrated circuitry.

iv. Caller ID for Video Calls

For a set top terminal receiving an incoming video call over the PSTN,cellular telephony or PCS networks, the caller identification techniquesdescribed in section C(4)(g), above, are applicable. For a set topterminal receiving an incoming video call over a cable televisionnetwork, the caller identification data is preferably embedded in avertical blanking 1 interval (VBI) or program control information signal(PCIS), as described in earlier sections. For a set top terminalreceiving an incoming video call over a cable television network, thecaller identification data is preferably contained in a TCP/IP(transmission control protocol/Internet protocol) packet preceding thecall packets. Preferably, the caller identification data is transmittedover the same network as the call itself, but this need not be the case.

v. Program Pausing for Video Calls

The automatic program pause feature described in section C(4)(1), above,can be used without modification when the communications event is avideo call event, which is a communication event involving video in anyway.

vi. Video Call—Video Program Picture-in-Picture

Picture-in-picture viewing of a video program and a video call togetheris also possible. The viewer/call participant can select differentorientations of the video components (e.g., call video in program video,vice versa, split screen). The viewer/call participant can also selectwhether to hear the call audio, the program audio or a summation ofboth. As an example, two sports enthusiasts may each watch the samesports event program while engaging in an interactive picture-in-picturevideo call to discuss the action. In addition, other content may beexchanged as part of the call, including files, a whiteboard and/or“telestrator” or “John Madden Pen” markings on the video program, makingthe program-call combination a shared multimedia experience.

The terms and descriptions used herein are set forth by way ofillustration only and are not meant as limitations. Those skilled in theart will recognize that numerous variations are possible within thespirit and scope of the invention as defined in the following claims.

1. A method for caller identification using a content receiving device,the method comprising: receiving, by the content receiving device, avideo program; outputting, by the content receiving device, the videoprogram to a display; detecting, by the content receiving device, atelephone signal including video content; processing the receivedtelephone signal; pausing, by the content receiving device prior to auser responding to the telephone signal, the video program upondetecting the telephone signal, wherein pausing the video programincludes initiating recording of at least a portion of the video programto a storage buffer in the content receiving device; and displaying theprocessed telephone signal including an indication that a telephonesignal has been detected.
 2. The method of claim 1, wherein the step ofdisplaying comprises overlaying the processed telephone signal over thevideo program.
 3. The method of claim 1, wherein the step of processingfurther comprises: generating at least one menu.
 4. The method of claim1, wherein the step of processing further comprises identifying atelephone number from which the telephone signal was initiated, whereinpausing the video program upon detecting the telephone signal isautomatically performed in response to determining that the telephonenumber matches one or more specified telephone numbers, and whereinpausing the video program upon detecting the telephone signal is notperformed automatically in response to determining that the telephonenumber does not match the one or more specified telephone numbers. 5.The method of claim 4, wherein the step of identifying a telephonenumber further comprises storing a list of telephone numbers and a listof names in memory, wherein each stored telephone number corresponds toa stored name.
 6. The method of claim 5, wherein the step of identifyinga telephone number further comprises matching the identified telephonenumber with one of said stored list of telephone numbers.
 7. The methodof claim 6, wherein the step of identifying a telephone number furthercomprises identifying the name stored in memory which corresponds to thematched telephone number.
 8. The method of claim 7 further comprising:monitoring the received telephone signal.
 9. The method of claim 8wherein the received telephone signal is an incoming telephone call, andthe step of monitoring comprises sensing an incoming telephone call. 10.The method of claim 8, wherein the step of sensing an incoming telephonecall comprises sensing that a telephone is ringing.
 11. The method ofclaim 1, wherein the telephone signal includes a signal on a ring lineand the step of detecting comprises sensing the signal on the ring line.12. The method of claim 1, wherein the step of detecting a telephonesignal comprises receiving the telephone signal from a cellulartelephone network.
 13. The method of claim 1, wherein the step ofdetecting a telephone signal comprises receiving the telephone signalfrom a personal communications network.
 14. The method of claim 1,further comprising the step of answering the displayed telephone signal.15. The method of claim 1, wherein the step of detecting a telephonesignal comprises receiving the telephone signal from a cable system. 16.The method of claim 1, wherein the step of detecting a telephone signalcomprises receiving the telephone signal from a satellite system. 17.The method of claim 1, further comprising: electronically capturing avideo image of a user of the content receiving device; and transmittingthe video image to the source of the telephone signal.
 18. The method ofclaim 17 wherein a camera electronically captures the video image of theuser of the content receiving device, and wherein the method furthercomprises: receiving a signal to activate the camera.
 19. The method ofclaim 18 further comprising: receiving instructions from the user of thecontent receiving device; and pointing the camera in accordance with theinstructions.
 20. The method of claim 1 further comprising: providing aconference call involving the telephone signal.
 21. An apparatus for usein displaying a video program and telephone call identification,comprising: a receiver configured to receive a telephone signalindicating the telephone call identification; a processor, operablyconnected to the receiver, configured to process the received telephonesignal indicating telephone call identification; and a generator,operably connected to the processor and configured to generate a signalfor display using the processed telephone signal, wherein the processoris further configured to: receive the video program; output the videoprogram to a display; detect the telephone signal, the telephone signalhaving video content; pause the video program upon detecting thetelephone signal and prior to a user responding to the telephone signal,wherein pausing the video program includes initiating recording of atleast a portion of the video program to a storage buffer of theapparatus; and display the telephone signal generated using theprocessed telephone signal.
 22. The apparatus of claim 21, wherein thereceiver comprises a telephone modem.
 23. The apparatus of claim 21further comprising a television set, operably connected to thegenerator, whereby the signal for display is received by said televisionset.
 24. The apparatus of claim 21, wherein the processor furthercomprises processing circuitry for identifying a telephone number fromwhich a telephone call was initiated.
 25. The apparatus of claim 21,wherein the processor, based on the received telephone signal indicatingtelephone call identification, produces at least one text message and atleast one graphics icon.
 26. The apparatus of claim 21, furthercomprising memory connected to the processor for storing a list oftelephone numbers and a list of names, wherein each stored telephonenumber corresponds to a stored name.
 27. The apparatus of claim 21,wherein the generator generates a signal for display that comprises theidentified name.
 28. The apparatus of claim 21 wherein the generatorcomprises a text generator.
 29. The apparatus of claim 21, wherein thegenerator generates at least one menu to be displayed.
 30. The apparatusof claim 29, wherein the at least one menu is generated based on thereceived telephone signal indicating telephone call identification. 31.The apparatus of claim 21, further comprising a telephone messagesystem.
 32. The apparatus of claim 21, further comprising an automaticmessage system wherein an activation signal activates the automatictelephone message system.
 33. The apparatus of claim 21, wherein thereceiver is adapted to receive a video telephone signal from one or moreof the group consisting of a cable system, a cellular telephone network,a personal communications network and a satellite system.
 34. Theapparatus of claim 21 further comprising: a turbo card for generating atleast one menu to be displayed, wherein the at least one menu isgenerated based on the received data indicating telephone callidentification.
 35. The apparatus of claim 21, further comprising: acamera.
 36. The apparatus of claim 21, further comprising: a cameraport.
 37. The apparatus of claim 35, further comprising: one or morebuttons from the group consisting of a camera activation button, a callanswer button and a call hangup button.
 38. The apparatus of claim 37,further comprising: a remote control, the one or more buttons located onthe remote control.
 39. A method of displaying a video program and avideo call together, the method comprising: receiving, by a contentreceiving device, the video program; outputting the video program;detecting an incoming video call during the video program; determining asource address of the incoming video call; determining that the sourceaddress of the incoming video call matches one or more specified sourceaddresses; and in response to determining that the source address of theincoming video call matches the one or more specified source addresses,pausing the video program prior to a user responding to the incomingvideo call, wherein pausing the video program includes initiatingrecording of at least a portion of the video program to a storagebuffer.
 40. The method of claim 39 wherein the video program isaccompanied by audio and the incoming video call is accompanied byaudio, the method further comprising: accepting a user selection foreither program audio or call audio; sounding the selected audio; andsuppressing the nonselected audio.
 41. The method of claim 39 whereinthe video program is accompanied by an audio signal and the incomingvideo call is accompanied by an audio signal, the method furthercomprising: summing the program audio signal and call audio signal toform a summed audio signal; and sounding the summed audio signal. 42.The method of claim 39 wherein the incoming video call is displayed as apicture in picture of the video program.
 43. The method of claim 39wherein the video program is displayed as a picture in picture of theincoming video call.
 44. The method of claim 39 wherein the incomingvideo call is a conference call with multiple video components, andwherein the video program and the multiple video calls are displayed ona split screen.
 45. The method of claim 39 further comprising: acceptingfrom the user markings for overlay on the program video; andcommunicating the markings to another party in the incoming video call.46. The method of claim 39 further comprising: providing an on-screenwhiteboard; and accepting input onto the whiteboard from a party in theincoming video call.